Oracle 12c dataguard查看主备库同步情况的新变化

导读

本文介绍Oracle 12c dataguard在维护方面的新变化

前提:主库备库的同步是正常的。

1、主库上查看archive Log list

bash 复制代码
SYS@cdb1> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /oradata/arch
Oldest online log sequence     39
Next log sequence to archive   41
Current log sequence           41
SYS@cdb1>

2、备库上查看archive log list

bash 复制代码
SYS@cdb1dg> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /oradata/arch
Oldest online log sequence     0
Next log sequence to archive   0
Current log sequence           0
SYS@cdb1dg>

主库和备库同步正常,可以正常切换,切换后,发现新的备库的archive Log list显示全部是0 。

3、解决方法

查看官方文档《Archive Log List Showing 0 At Standby, But Standby Is Completely In Sync With Primary! (文档 ID 2041137.1)》,根据官方文档提示,Oracle12c版本中的dataguard不需要用archive log list查看,要用下面的SQL来查看。

bash 复制代码
##主库查看:

SYS@cdb1> select thread#, max(sequence#) 
  2  from v$archived_log a, v$database b
  3  where a.resetlogs_change# = b.resetlogs_change#
  4  group by thread# order by 1;

   THREAD# max(sequence#)
---------- --------------------------
         1                        130


SYS@cdb1> select thread#, max(sequence#) 
  2  from v$archived_log a, v$database b
  3  where a.resetlogs_change# = b.resetlogs_change#
  4  and a.applied in ('YES','IN-MEMORY')
  5  group by thread# order by 1;

   THREAD# max(sequence#)
---------- ------------------------
         1                      130

SYS@cdb1>
bash 复制代码
##备库查看:

SYS@cdb1dg> select thread#, max(sequence#) 
  2  from v$archived_log a, v$database b
  3  where a.resetlogs_change# = b.resetlogs_change#
  4  group by thread# order by 1;

   THREAD# max(sequence#)
---------- --------------------------
         1                        130

SYS@cdb1dg> select thread#, max(sequence#) 
  2  from v$archived_log a, v$database b
  3  where a.resetlogs_change# = b.resetlogs_change#
  4  and a.applied in ('YES','IN-MEMORY')
  5  group by thread# order by 1;

   THREAD# max(sequence#)
---------- ------------------------
         1                      130

SYS@cdb1dg>

通过v a r c h i v e d l o g 与 v archived_log与v archivedlog与vdatabase视图联合查询即可查看到主备库是否同步了。

相关推荐
许彰午2 分钟前
# Oracle shutdown immediate关不掉——一次排坑实录
数据库·oracle
消失的旧时光-19435 分钟前
SQL 怎么学(工程实战总纲|用一套用户模型打穿全流程)
java·数据库·sql
abc123456sdggfd9 分钟前
如何统一SQL视图报错信息_使用异常处理机制包装视图
jvm·数据库·python
qq_4609784010 分钟前
如何处理SQL循环逻辑_探索递归CTE实现复杂计算
jvm·数据库·python
码农阿豪10 分钟前
Django接金仓数据库:我踩过的坑和填坑指南
数据库·python·django
疯狂成瘾者10 分钟前
Prompt分层策略
前端·数据库·prompt
2401_8314194411 分钟前
C++如何利用YAML存储复杂的数学矩阵_Eigen库结合yaml-cpp用法【实战】
jvm·数据库·python
2401_8987176612 分钟前
如何进行SQL数学计算_运用ROUND与CEIL处理数值精度
jvm·数据库·python
2501_9012005313 分钟前
Pytest 实现两级参数化:让服务名依赖于应用名的灵活测试方案
jvm·数据库·python
2301_7662834418 分钟前
C#怎么实现EF Core迁移 C#如何用Entity Framework Core进行数据库迁移和更新表结构【数据库】
jvm·数据库·python