这篇文章主要介绍“oracle11g dataguard如何切换”,在日常操作中,相信很多人在oracle11g dataguard如何切换问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”oracle11g dataguard如何切换”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
1.查看主库是否满足切换条件
SQL> select switchover_status from v$database;
SWITCHOVER_STATUS
----------------------------------------
TO STANDBY
有时候会显示 SESSION ACTIVE,这表示当前还有活动的会话连接。
2.执行下面的命令切换
SQL> alter database commit to switchover to physical standby;
Database altered.
如果第一步切换条件查看显示 SESSION ACTIVE,那么在这里使用下面命令
SQL> alter database commit to switchover to physical standby WITH SESSION SHUTDOWN;
3.关闭数据库重启到 mount
SQL> shutdown immediate;
ORA-01012: not logged on
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@oraclerac2 ~]$ sqlplus "/ as sysdba"
SQL*Plus: Release 11.2.0.4.0 Production on Wed Aug 1 17:45:33 2018
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup mount;
ORACLE instance started.
Total System Global Area 2.1379E+10 bytes
Fixed Size 2262656 bytes
Variable Size 2885683584 bytes
Database Buffers 1.8455E+10 bytes
Redo Buffers 36073472 bytes
Database mounted.
4.用 Read Only 模式打开
SQL> alter database open read only;
Database altered.
5.启动 Redo 应用模式
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;
Database altered.
6.切换后查看角色
SQL> select database_role,switchover_status from v$database;
DATABASE_ROLE SWITCHOVER_STATUS
-------------------------------- ----------------------------------------
PHYSICAL STANDBY TO PRIMARY
7.以上操作都是原来的主库完成的,下面的操作在原来的备库完成
8.查看 Standby Database 是否满足切换条件
SQL> select database_role,switchover_status from v$database;
DATABASE_ROLE SWITCHOVER_STATUS
-------------------------------- ----------------------------------------
PHYSICAL STANDBY TO PRIMARY
9.执行下面命令进行切换
SQL> alter database commit to switchover to primary;
Database altered.
10.打开数据库
SQL> alter database open;
Database altered.
11.切换后查看角色
SQL> select database_role,switchover_status from v$database;
DATABASE_ROLE SWITCHOVER_STATUS
-------------------------------- ----------------------------------------
PRIMARY TO STANDBY
到此,关于“oracle11g dataguard如何切换”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!