系统信息:Linux localhost.localdomain 2.6.18-164.el5 #1 SMP Thu Sep 3 03:33:56 EDT 2009 i686 i686 i386 GNU/Linux
数据库版本:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
主库信息:
NAME DB_UNIQUE_NAME DATABASE_ROLE
--------- ------------------------------ ----------------
AARON aaron PRIMARY
备库信息
NAME DB_UNIQUE_NAME DATABASE_ROLE
--------- ------------------------------ ----------------
AARONSTB aaronstb LOGICAL STANDBY
1. 查看主库状态
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
TO STANDBY
如果状态为TO STANDBY或者SESSIONS ACTIVE 表示可以转换为逻辑备库。
2.当前主库准备switchover
SQL> ALTER DATABASE PREPARE TO SWITCHOVER TO LOGICAL STANDBY;
Database altered.
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
PREPARING SWITCHOVER
3. 当前备库准备switchover
SQL> ALTER DATABASE PREPARE TO SWITCHOVER TO PRIMARY;
Database altered.
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
PREPARING SWITCHOVER
4. 确保当前主库准备好swithover到备库
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
TO LOGICAL STANDBY
TO LOGICAL STANDBY表示准备好switchover为备库,如果不是此状态,使用如下语句取消switchover
主库:
SQL> ALTER DATABASE PREPARE TO SWITCHOVER CANCEL;
备库:
SQL> ALTER DATABASE PREPARE TO SWITCHOVER CANCEL;
5. 切换当前主库为备库
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO LOGICAL STANDBY;
Database altered.
6. 确保备库准备好成为主库
SQL> SELECT SWITCHOVER_STATUS FROM V$DATABASE;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
7. 切换当前备库为主库
SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;
Database altered.
8. 开启SQL Apply(新备库)
SQL> ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATE;
Database altered.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28719055/viewspace-1251278/
,如需转载,请注明出处,否则将追究法律责任。