重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1430|回复: 0
打印 上一主题 下一主题

[原创] ORACLE 19c热克隆PDB SWITCHOVER后的坑,报RMAN-03014,RMAN-03009,ORA-01403

[复制链接]
跳转到指定楼层
楼主
发表于 2023-10-18 22:34:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以前往RECOVERY CATALOG注册数据库,还重未出现过类似错误,最后,出现SHOW ALL都会报同样的错误,确实觉得奇怪,下面记录一下过程。
先说一下环境:
数据库:
  ORACLE 19.3 SINGLE INSTANCE,CDB
恢复目录:
  ORACLE 19.3,CDB
问题分析:
    测试了一下,有两个库存在这个问题,PRODCDB,DEVCDB,其他数据库没有问题,比如PROD4(NONCDB),PRODDG(CDB),那说来就比较奇怪了,要说CDB有问题,那么PRODDG也是CDB,就没有问题,不过有问题这两个实例,做了热克隆,DEVCDB中的一个PDB,HOTCLONE_PDB1是从PRODCDB中,克隆PDBPROD1过去的,同时使用了SWITOVER特性,其他没有什么特殊的地方。
   把DEVCDB中,这个新克隆的PDB删除后,再注册,就没有问题了。
   把PRODCDB中的这个PDBPROD1删除后,开始也有问题,后来重启一次PRODCDB,就OK了。
   开始以为是什么参数的原因,把所有修改过的参数,都恢复到默认值,同样存在问题,所以,开始怀疑是PDB的问题。
   通过跟踪,DEBUG TRACE REG.LOG,发现是以下内容
krmqgns: looking for work for channel default (krmqgns)
DBGRPC:           krmqgns: commands remaining to be executed: (krmqgns)
DBGRPC:           CMD type=cleanup cmdid=1 status=NOT STARTED
DBGRPC:                 1 STEPstepid=1 cmdid=1 status=NOT STARTED
DBGRPC:           krmqgns: no work found for channel default (krmqgns)
DBGRPC:            (krmqgns)
DBGRPC:          EXITED krmqgns with status 1
DBGRPC:          ENTERED krmqgns
DBGRPC:           krmqgns: looking for work for channel default (krmqgns)
DBGRPC:           krmqgns: commands remaining to be executed: (krmqgns)
DBGRPC:           CMD type=cleanup cmdid=1 status=NOT STARTED
DBGRPC:                 1 STEPstepid=1 cmdid=1 status=NOT STARTED
DBGRPC:           krmqgns: no work found for channel default (krmqgns)
DBGRPC:            (krmqgns)
DBGRPC:          EXITED krmqgns with status 1
DBGRPC:          krmxr - all done
DBGRPC:          krmxr - exiting with 0
DBGMISC:        EXITED krmiexe with status 0 [19:25:31.204] elapsed time [00:00:00:00.025]
DBGMISC:        Finished cleanup at 14-OCT-23 [19:25:31.204]
DBGMISC:        ENTERED krmkjcl [19:25:31.204]
DBGMISC:        EXITED krmkjcl [19:25:31.204] elapsed time [00:00:00:00.000]
DBGMISC:       EXITED krmice [19:25:31.204] elapsed time [00:00:00:00.041]
Calling krmmpem from krmmexe
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of register command at 10/14/2023 19:25:31
RMAN-03014: implicit resync of recovery catalog failed
RMAN-03009: failure of full resync command on default channel at 10/14/2023 19:25:31
RMAN-10032: unhandled exception during execution of job step 1:
ORA-06512: at line 4366
ORA-06512: at line 1624
ORA-06512: at line 1624
ORA-06512: at line 2347
RMAN-10035: exception raised in RPC:
ORA-01403: no data found
ORA-06512: at "RC_ADMIN.DBMS_RCVCAT", line 1804
ORA-06512: at "RC_ADMIN.DBMS_RCVCAT", line 1796
ORA-06512: at "RC_ADMIN.DBMS_RCVCAT", line 14029
RMAN-10031: RPC Error: ORA-01403  occurred during call to DBMS_RCVCAT.CHECKPLUGGABLEDBINC
DBGMISC:       ENTERED krmkursr [19:25:31.205]
搜索了MOS,register database or resync catalog ORA-01403 RMAN-03014 (Doc ID 1452296.1) 说是一个BUG,WORKAROUND说重启数据库,并重新注册,就好,但我这里简单的重启不行,我这个机器上确实有很多实例,包含11G,12C,19C,但以前都没有问题,而且其他实例都没有问题,就这两个有关联关系的实例有问题,同时,看到这个跟踪中,报错是在 DBMS_RCVCAT.CHECKPLUGGABLEDBINC  调用上,感觉就是对PDB的某个条件的判断上存在问题,由于是测试,我重新把这个两个实例中的热克隆的PDB都删除,重新再建立,并重新热克隆,并切换一次,克隆库成为主,再切换一次,回到以前的主,问题重现。
使用的命令:
热克隆
create pluggable database hotclone_pdb1 from   pdbprod1@link_prodcdb
       refresh mode every 5 minutes
       create_file_dest='/u01/app/oracle/oradata/';
切换:
PRODCDB源端执行:
ALTER PLUGGABLE DATABASE
REFRESH MODE every 5 minutes
FROM hotclone_pdb1@link_devcdb
SWITCHOVER;
DEVCDB目标端执行
ALTER PLUGGABLE DATABASE
REFRESH MODE every 5 minutes
FROM pdbprod1@link_prodcdb
SWITCHOVER;
之后,去注册:
rman target sys/oracle_4U@prodcdb catalog rc_admin/RC_ADMIN@RCATCDB
register database;
就报错了:
starting full resync of recovery catalog
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of register command at 10/14/2023 19:19:29
RMAN-03014: implicit resync of recovery catalog failed
RMAN-03009: failure of full resync command on default channel at 10/14/2023 19:19:29
ORA-01403: no data found
结论:
  看来19C的PDB带SWITOVER 的热克隆,存在某些问题,要慎重使用。至少在与RECOVERY CATALOG的配合上,是有问题的。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-11-25 07:24 , Processed in 0.112303 second(s), 21 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表