欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

DG重启之后主备数据不同步

程序员文章站 2023-02-05 23:35:04
问题描述:本来配置好的DG第二天重启之后,发现主备库数据不能同步,在主库上执行日志切换以及创建表操作都传不到备库上,造成这种错误的原因是主库实例断掉后造成备库日志与主库无法实时接收 主库:orcl 备库:orclstd 说明:启动之前主备库都要开启监听,否则接收不到数据 1.在主库上:启动主库,切换 ......

问题描述:本来配置好的dg第二天重启之后,发现主备库数据不能同步,在主库上执行日志切换以及创建表操作都传不到备库上,造成这种错误的原因是主库实例断掉后造成备库日志与主库无法实时接收

主库:orcl    备库:orclstd 说明:启动之前主备库都要开启监听,否则接收不到数据

1.在主库上:启动主库,切换到startup状态

DG重启之后主备数据不同步

 

 

 2.切换日志,并查看主库最大日志数

DG重启之后主备数据不同步

 

 

 3.在备库上:验证切换过的最大日志数,发现主备最大日志数不一样,主备库数据不能同步

DG重启之后主备数据不同步

 

4.取消备库接受日志,然后重启实例,避免因为过程中造成主库继续传输数据的冲突

DG重启之后主备数据不同步

 

 

 5.重启实例

 DG重启之后主备数据不同步

 

 

 6.把备库实例启动到nomount状态,再切换到mount状态,并将数据库状态切换为open read only只读状态

 DG重启之后主备数据不同步

 

 

 7.重新应用日志信息,开始实时同步

DG重启之后主备数据不同步

 

 

 8.主库上重新切换日志,并查看最大日志数

DG重启之后主备数据不同步

 

 

 9.在备库上查看最大日志数,已经可以同步了,在主库上创建表或者数据文件都是ok的

DG重启之后主备数据不同步

 

 

 10.相关sql

取消实时同步:sql> alter database recover managed standby database cancel;

开启实时同步:sql> alter database recover managed standby database using current logfile disconnect from session

日志切换       :sql> alter system archive log current;

看最大日志数:sql> select max(sequence#) from v$archived_log;

切换open只读:sql> alter database open read only;

加载到standby:sql> alter database mount standby database;