一、关闭主备库数据库及监听
1、切换主库日志
SQL> alter system switch logfile;
System altered.
SQL> select max(sequence#) from v$archived_log where applied='YES';
MAX(SEQUENCE#)
--------------
58
2、检查是否投递到备库并应用
SQL> select max(sequence#) from v$archived_log where applied='YES';
MAX(SEQUENCE#)
--------------
58
3、关闭主库
SQL> shutdown immediate
4、关闭主库监听
[oracle@zf sysconfig]$ lsnrctl stop
5、关闭备库实例
SQL> shutdown immediate
6、关闭备库监听
[oracle@localhost ~]$ lsnrctl stop
二、修改主库服务器IP
1、修改主库hosts文件
[root@zf ~]# vi /etc/hosts
2、修改主库网卡
[root@zf ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
3、重启network服务
[root@zf ~]# service network restart
4、修改主库监听
[oracle@zf ~]$ vi /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
5、修改主库tns
[oracle@zf admin]$ vi /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
三、修改备库服务器IP
1、修改备库hosts文件
[root@localhost ~]# vi /etc/hosts
2、修改备库网卡
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
3、重启network服务
[root@localhost ~]# service network restart
4、修改备库监听
[oracle@localhost ~]$ vi /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
5、修改备库tns
[oracle@localhost ~]$ vi /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
四、启动备库监听及实例
1、启动备库监听
[oracle@localhost ~]$ lsnrctl start
2、开启备库至nomount
[oracle@localhost ~]$ sqlplus / as sysdba
SQL> startup nomount
3、开启备库至mount
SQL> alter database mount standby database;
4、开启备库DG应用
SQL> alter database recover managed standby database disconnect from session;
如果配置了 standby redo log 并需要启用实时同步则执行以下代码
SQL>alter database recover managed standby database using current logfile disconnect from session;
五、启动主库监听及实例
1、启动主库监听
[oracle@zf admin]$ lsnrctl start
2、启动主库实例至open状态
[oracle@zf admin]$ sqlplus / as sysdba
SQL> startup
六、验证主备同步情况
主库执行切换日志操作
SQL> alter system switch logfile;
检查主库的日志是否同步备库,且备库应用了主库日志
SQL> select max(sequence#) from v$archived_log;
SQL>select sequence#,applied from v$archived_log;