1.檢查主備的環境
dg1節點:
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/oradata/tong/archive
Oldest online log sequence 59
Next log sequence to archive 61
Current log sequence 61
SQL>
dg2節點:
Oldest online log sequence 60
Next log sequence to archive 0
Current log sequence 61
2.檢視主備的角色
dg1節點(primary角色):
SQL> select switchover_status,database_role from v$database;
SWITCHOVER_STATUS DATABASE_ROLE
-------------------- ----------------
TO STANDBY PRIMARY
dg2節點(standby角色):
NOT ALLOWED PHYSICAL STANDBY
3.在主庫上執行切換指令(primary節點)
SQL> alter database commit to switchover to physical standby; --将primary角色轉換為standby角色
Database altered.
SQL> shutdown immediate --關閉資料庫,啟動到mount狀态
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> startup mount
Total System Global Area 830930944 bytes
Fixed Size 2217912 bytes
Variable Size 545261640 bytes
Database Buffers 281018368 bytes
Redo Buffers 2433024 bytes
Database mounted.
SQL> select switchover_status,database_role from v$database; --檢視目前primary角色的狀态
TO PRIMARY PHYSICAL STANDBY
4.在備庫上執行(standby節點)
SQL> select switchover_status,database_role from v$database; --檢視standby備庫角色的狀态
SQL> alter database commit to switchover to primary; --将備庫的角色修改為primary
NOT ALLOWED PRIMARY
SQL> alter database open; --打開資料庫
5.在備庫上執行(standby節點)
RECOVERY NEEDED PHYSICAL STANDBY
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION; --修改以前主庫為日志應用
Database altered.
6.測試主備節點是否切換成功
dg2節點(primary角色):
SQL> select * from tt;
A
----------
1
3
4
5
6
7
6 rows selected.
SQL> insert into tt values(8);
1 row created.
SQL> commit;
Commit complete.
SQL> select * from tt where a=8;
8
SQL> alter system switch logfile;
System altered.
SQL> /
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /u01/oradata/tong/archive
Oldest online log sequence 78
Next log sequence to archive 80
Current log sequence 80
dg1節點(standby角色):
Oldest online log sequence 79
Next log sequence to archive 0
SQL> alter database recover managed standby database cancel;
SQL> alter database open read only;
A
1
3
4
5
6
7
8
7 rows selected.
本文轉自 z597011036 51CTO部落格,原文連結:http://blog.51cto.com/tongcheng/1874292,如需轉載請自行聯系原作者