首页 > 其他分享 >DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database

DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database

时间:2023-04-18 10:03:30浏览次数:46  
标签:主库 target dest destination 报错 日志 从库 mydb


最近有需求要给数据库新搭一个DG变为一主两从,搭好之后测试发现一直没有同步,检查问题。

从库一直等待接收71855号日志

DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database_hive

主库有归档日志发送失败的报错,可以看到归档到dest_2(原从库)是成功的,而到desc_3(新从库)则是失败的

DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database_数据库_02

根据日志提示查看arc2进程的trace日志

DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database_hive_03

看到有ora-16058和ora-16047的报错,解释如下

DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database_数据库_04

ora-16058报错是从库状态为not mounted,这很诡异,因为我们的从库明明已经open了。

而ora-16047是说从库的db_unique_name参数设置与主库log_archive_dest_n中设置的不符。检查了一下原来是从库db_unique_name参数没有改,直接用了主库原来的mydb,而在log_archive_dest_n中设置的是mydb_hc,因此检查到两个名称不符,并且主库检查到mydb_hc的从库状态为not mounted。

找到了问题解决方法就很简单,把从库db_unique_name改为mydb_hc,重启数据库;主库defer并enable log_archive_dest_state_3参数即可。

从库

Alter system set db_unique_name=’ mydb_hc’ scope=spfile;
alter database recover managed standby database cancel;
shutdown immediate;

主库

Alter system set log_archive_dest_state_3=defer;
Alter system set log_archive_dest_state_3=enable;

查看主库日志,发现归档日志发送成功

DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database_归档日志_05

再检查发现从库换了新的alert日志路径,查看新日志

DG搭建报错 ORA-16047: DGID mismatch between destination setting and target database_归档日志_06

发现新接收的日志已经开始应用了,检查主从同步情况,发现已经同步,大功告成~

另外查网上文章发现如果备库没有设置LOG_ARCHIVE_CONFIG参数也会出现ORA-16047报错,并且此时这个报错的提示就不像我们这个问题这么直接,需要检查v$dataguard_status看是否有其他报错。

 

参考 

https://oracleblog.org/working-case/misleading-ora-16047-dgid-mismatch-between-destination-setting-and-target-database/

标签:主库,target,dest,destination,报错,日志,从库,mydb
From: https://blog.51cto.com/u_13631369/6202387

相关文章