利用Oracle種子恢復數據庫(3)——不停庫修改數據文件的位置
除了停庫使用alter database命令更改數據文件的位置意外,還可以通過設置表空間爲offline修改數據文件的位置。但是該方法不能修改system表空間對應的數據文件。下面以users表空間爲例:
一、查看數據文件的信息
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/usr/local/oradata/student/system01.dbf
/usr/local/oradata/student/sysaux01.dbf
/usr/local/oradata/student/undotbs01.dbf
/usr/local/oradata/student/users01.dbf
SQL> select name from v$tempfile;
NAME
--------------------------------------------------------------------------------
/usr/local/oradata/student/temp01.dbf
二、把表空間設置爲offline
SQL> alter tablespace users offline;
Tablespace altered.
三、移動users表空間對應的數據文件
SQL> host mv /usr/local/oradata/student/users01.dbf /usr/local/oradata/users01.dbf
四、在控制文件中修改數據文件的位置
SQL> alter tablespace users rename datafile '/usr/local/oradata/student/users01.dbf' to '/usr/local/oradata/users01.dbf';
Tablespace altered.
五、把表空間設置爲online
SQL> alter tablespace users online;
Tablespace altered.
六、查看數據文件的信息
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/usr/local/oradata/student/system01.dbf
/usr/local/oradata/student/sysaux01.dbf
/usr/local/oradata/student/undotbs01.dbf
/usr/local/oradata/users01.dbf