oracle 在線rename數(shù)據(jù)文件
今天給表空間加數(shù)據(jù)文件的時候,馬虎大意多加了一個空格,為了避免之后備份等問題?,F(xiàn)在準備在
線rename數(shù)據(jù)文件。先在測試庫上進行試驗
SQL> create tablespace test datafile '/home/oracle/tst.dbf ' size 1m;
Tablespace created.
確認是否為歸檔模式
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /archive/archive1
Oldest online log sequence 109
Next log sequence to archive 111
Current log sequence 111
如果不是歸檔模式,需要將數(shù)據(jù)庫啟到mount 狀態(tài),將數(shù)據(jù)庫更改成歸檔模式
SQL>alter database archivelog;
此時可能碰到 ora-00265錯誤!解決辦法是將數(shù)據(jù)庫已限制模式啟動,再重啟到mount狀態(tài)
SQL>startup restrict;
當數(shù)據(jù)庫處于歸檔模式的時候,便可進行在線rename 操作:
1查詢datafile 的文件號
SQL> select file_id,file_name from dba_data_files where tablespace_name='TEST';
FILE_ID FILE_NAME
---------- --------------------------------------------------
13 /home/oracle/tst.dbf
2.將數(shù)據(jù)文件offline
SQL> alter database datafile 13 offline;
Database altered
3.操作系統(tǒng)中將文件名稱修改:
SQL>host mv '/home/oracle/tst.dbf ' /home/oracle/tst.dbf
4rename數(shù)據(jù)文件
SQL> alter database rename file '/home/oracle/tst.dbf ' to '/home/oracle/tst.dbf';
Database altered.
5.恢復(fù)數(shù)據(jù)文件并online
SQL> recover datafile 13;
Media recovery complete.
SQL> alter database datafile 13 online;
Database altered
6、查詢數(shù)據(jù)文件狀態(tài)
SQL> select file_id,file_name,status from dba_data_files where tablespace_name='TEST';
FILE_ID FILE_NAME STATUS
---------- -------------------------------------------------- ------------------
13 /home/oracle/tst.dbf AVAILABLE