If the database is currently using raw disks or volumes, use one of the following procedures to use VxFS with the Quick I/O feature or Oracle Disk Manager.
Warning: |
The procedure provided assumes that the database runs on a single file system after the upgrade. |
To convert from raw devices to VxFS with Quick I/O
Create a VxFS file system using a size that is 10 percent larger than the original database or total raw device size. You can create more file systems based on your performance and availability requirements.
Preallocate Quick I/O files using qiomkfile.
See Creating database files as Quick I/O files using qiomkfile.
Copy each raw device file to the new VxFS file system.
For example, use the dd command to copy the file /dev/rdsk/Disk_2 to /db01/dbfile:
$ dd if=/dev/rdsk/Disk_2 of=/db01/dbfile ibs=4k skip=1 obs=128k
If the database uses symbolic links to access the database files, change the symbolic links to point to the Quick I/O files.
For example, if the database has a datafile specification /data/file1 that was linked to /dev/rdsk/Disk_2, change it to point to the new Quick I/O file:
$ rm /data/file1 $ ln -s /db01/dbfile /data/file1
If the database was using absolute paths to access the database files, rename each file within Oracle before bringing the database online. For example:
$ sqlplus "/ as sysdba" SQL> startup mount; SQL> alter database rename file filename to newfilename;
Restart the database. For example:
SQL> alter database open; SQL> exit
To convert from raw devices to regular files for ODM
Create a VxFS file system using a size that is 10 percent larger than the original database or total raw device size. You can create more file systems based on your performance and availability requirements.
Preallocate the files for ODM using odmmkfile.
odmmkfile -h header_size -s file_size filename
where -h creates a file with additional space allocated for the Oracle header and -s preallocates a certain amount of space for the file.
Copy each raw device file to the new VxFS file system.
For example, use the dd command to copy the file /dev/rdsk/Disk_2 to /db01/dbfile:
$ dd if=/dev/rdsk/Disk_2 of=/db01/dbfile ibs=4k skip=1 obs=128k
If the database uses symbolic links to access the database files, change the symbolic links to point to the new files.
For example, if the database has a datafile specification /data/file1 that was linked to /dev/rdsk/Disk_2, change it to point to the new file:
$ rm /data/file1 $ ln -s /db01/dbfile /data/file1
If the database was using absolute paths to access the database files, rename each file within Oracle before bringing the database online. For example:
$ sqlplus "/ as sysdba" SQL> startup mount; SQL> alter database rename file filename to newfilename;
Restart the database. For example:
SQL> alter database open; SQL> exit