[dataguard同步数据库]oracle11g dataguard 备库数据同步的检查方法

Posted sqlserver-mysql

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[dataguard同步数据库]oracle11g dataguard 备库数据同步的检查方法相关的知识,希望对你有一定的参考价值。

  概述:

  一、环境

  ? ? ?主库:

  ? ? ? ip地址:192.168.122.203

  ? ? ? oracle根目录:/data/db/oracle

  ? ? ? SID:qyq

  ? ? ? 数据文件路径/data/db/oracle/oradata/qyq

  ? ? ? 归档文件路径:/data/db/oracle/archive‘

  ? ? ?备库:

  ? ? ? ip地址:192.168.122.204

  ? ? ? oracle根目录:/data/app/oracle

  ? ? ? SID:qyq

  ? ? ? 数据文件路径/data/app/oracle/oradata/qyq

  ? ? ? 归档文件路径:/data/app/oracle/archive‘

  二、备库不同步的问题检查方法

  1、检查主备两边的序号

  select max(sequence#) from v$log;?---检查发现一致

  2、备库执行,查看是否有数据未应用

  select name,SEQUENCE#,APPLIED from v$archived_log order by sequence#;

  select SEQUENCE#,FIRST_TIME,NEXT_TIME ,APPLIED from v$archived_log order by 1;

  3、检查备库是否开启实时应用

  select recovery_mode from v$archive_dest_status where dest_id=2;

  4、检查备库状态

  select switchover_status from v$database; --发现状态not?allowed?

  3、看看进程MRP是否存在

  ?ps aux|grep mrp--发现进程不存在

  4、如果不存在执行以下:

  alter database recover managed standby database using current logfile disconnect;

  alter database recover managed standby database disconnect from session;? --后台执行

  alter database recover managed standby database --前台执行,执行这个可以看到报错的情况

  如果有报错,查看alert日志和log.xml日志?

  5、验证是否正常

  select process,status from v$managed_standby;

  select process,status,sequence# from v$managed_standby;

  如果看到mrp0正常

  6、以上步骤处理好后,如果数据还不正常,接着处理

  关闭备库,接着处理:

  把主库上 undotbs01.dbf 文件,物理的重拷到备库机上以前undotbs01.dbf 所在目录下;

  $scp /data/oracle/oradata/voip/undotbs01.dbf?192.168.122.204:/data/oracle/oradata/voip

  再在主库上重新生成一个standby control file ,拷到备库机上相应目录下,

  alter database create standby controlfile as ‘/data/oracle/oradata/voip/qyqdg01.ctl‘

  $scp /data/oracle/oradata/voip/qyqdg01.ctl 192.168.122.204:/data/oracle/oradata/voip

  $ mv?qyqdg01.ctl? control01.ctl

  $ cp control01.ctl /data/oracle/flash_recovery_area/qyq/

  $cd /data/oracle/flash_recovery_area/qyq/

  $ mv control01.ctl? control02.ctl

  接着

  STARTUP NOMOUNT;

  ALTER DATABASE MOUNT STANDBY DATABASE;

  ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

  --------------------------------------

  session恢复完成后,重启打开备库;

  alter database open read only;

  

 数据库同步软件

以上是关于[dataguard同步数据库]oracle11g dataguard 备库数据同步的检查方法的主要内容,如果未能解决你的问题,请参考以下文章

Oracle11g搭建DataGuard及主备切换方法总结亲测可用

Oracle 11g DataGuard搭建 - 单节点到单节点

oracle 11g dataguard安装出现的错误

搭建Oracle 11G单实例Active DataGuard

Oracle DataGuard 11g 双机实验

Oracle 11G R2利用RMAN搭建DataGuard环境