data gurad物理備份方式下重新命名資料檔案

eric0435發表於2012-12-04
重新命名資料檔案
如果primary 資料庫重命令了一個或多個資料檔案,該項修改並不會自動傳播到standby 資料庫。
如果你想讓standby 和資料檔案與primary 保持一致,那你也只能自己手工操作了。就算STANDBY_FILE_MANAGEMENT 也幫不上忙啦,不管它是auto 還是manual。
下面透過示例做個演示:
A).將重新命名的資料檔案所在表空間offline --primary 資料庫操作
SQL> alter tablespace users offline;

Tablespace altered.
B).手工將資料檔案改名(作業系統) --primary 資料庫操作

C).透過命令修改資料字典中的資料檔案路徑,並online 表空間--primary 資料庫操作
SQL> alter tablespace users rename datafile '/u01/app/oracle/oradata/jytest/users01.dbf' to '/u01/app/oracle/oradata/jytest/myusers01.dbf';

Tablespace altered.


SQL> alter tablespace users online;

Tablespace altered.

SQL>

D).暫停redo 應用,並shutdown --standby 資料庫操作
SQL> alter database recover managed standby database cancel;

Database altered.

SQL> shutdown immediate;
ORA-01507: database not mounted

E).手工將資料檔案改名(作業系統) --standby 資料庫操作

F).重啟standby,修改資料檔案路徑(資料字典) --standby 資料庫操作

SQL> startup mount;
ORACLE instance started.

Total System Global Area 6442450944 bytes
Fixed Size                  2030368 bytes
Variable Size            1090520288 bytes
Database Buffers         5335154688 bytes
Redo Buffers               14745600 bytes
Database mounted.

SQL> alter database rename file
2 '/u01/app/oracle/oradata/jytest/users01.dbf' to
3 '/u01/app/oracle/oradata/jytest/myusers01.dbf';
表空間已更改

G).重新啟動redo 應用。
SQL> alter system set standby_file_management='MANUAL' scope=both;

System altered.

SQL> alter database rename file '/u01/app/oracle/oradata/jytest/users01.dbf' to  '/u01/app/oracle/oradata/jytest/myusers01.dbf';

Database altered.

SQL> alter system set standby_file_management='AUTO' scope=both;

System altered.
H).切換日誌--primary 資料庫操作
SQL> alter system switch logfile;
系統已更改。

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

相關文章