oracle 線上rename資料檔案

蒙娜麗莎的大嘴脣兒發表於2019-07-11
今天給表空間加資料檔案的時候,馬虎大意多加了一個空格,為了避免之後備份等問題。現在準備在
線rename資料檔案。先在測試庫上進行試驗
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
如果不是歸檔模式,需要將資料庫啟到mount 狀態,將資料庫更改成歸檔模式
SQL>alter database archivelog;
此時可能碰到 ora-00265錯誤!解決辦法是將資料庫已限制模式啟動,再重啟到mount狀態
SQL>startup restrict;
當資料庫處於歸檔模式的時候,便可進行線上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.將資料檔案offline
SQL> alter database datafile 13 offline;
Database altered
3.作業系統中將檔名稱修改:
SQL>host mv '/home/oracle/tst.dbf ' /home/oracle/tst.dbf
4rename資料檔案
SQL>  alter database rename file '/home/oracle/tst.dbf ' to '/home/oracle/tst.dbf';
Database altered.
5.恢復資料檔案並online
SQL> recover datafile 13;
Media recovery complete.
SQL> alter database datafile 13 online;
Database altered
6、查詢資料檔案狀態
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


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31561453/viewspace-2650218/,如需轉載,請註明出處,否則將追究法律責任。

相關文章