ORA-16416: 切换目标与主目标不同步
情况描述
在进行E-OBAR的演练切换时出现报错“ORA-16416切换目标与主目标不同步”
当时环境为主机:10.168.3.48,备机为:10.168.3.45.传输redo日志都正常,测试listen也正常。
情况描述
在进行E-OBAR的演练切换时出现报错“ORA-16416切换目标与主目标不同步”
当时环境为主机:10.168.3.48,备机为:10.168.3.45.传输redo日志都正常,测试listen也正常。
问题追踪
(1) 通过百度,获得要去重新拷贝一份主库的控制文件就可以解决这个问题,但是实际E-OBAR在重新安装备库的操作也是会进行拷贝主库控制文件的操作,因此我重新进行安装备库45的操作,但是结果在“演练切换”的时候还是报同样的错误。
(2) 通过查看主库48上面的aler告警日志文件,发现数据库在进行switch over操作时报的是ORA-16057: DGID from server not in Data Guard configuration备库不属于这个dataguard的配置中。然后通过查询48和45的spfile参数,一切还是正常的。
(1) 通过百度,获得要去重新拷贝一份主库的控制文件就可以解决这个问题,但是实际E-OBAR在重新安装备库的操作也是会进行拷贝主库控制文件的操作,因此我重新进行安装备库45的操作,但是结果在“演练切换”的时候还是报同样的错误。
(2) 通过查看主库48上面的aler告警日志文件,发现数据库在进行switch over操作时报的是ORA-16057: DGID from server not in Data Guard configuration备库不属于这个dataguard的配置中。然后通过查询48和45的spfile参数,一切还是正常的。
48:
SQL> show parameter log_archive_config;
SQL> show parameter log_archive_config;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_config string DG_CONFIG=(redhat4_5_obar,redhat4_8_obar)
45:
SQL> show parameter log_archive_config;
------------------------------------ ----------- ------------------------------
log_archive_config string DG_CONFIG=(redhat4_5_obar,redhat4_8_obar)
45:
SQL> show parameter log_archive_config;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_config string DG_CONFIG=(redhat4_5_obar,redhat4_8_obar)
------------------------------------ ----------- ------------------------------
log_archive_config string DG_CONFIG=(redhat4_5_obar,redhat4_8_obar)
(3) 个人估计可能是数据库或者操作系统环境的问题,所以重新安装E-OBAR,环境仍然为48为主库,45为备库。但是“演练切换”仍然出现同样的错误。
(4) 重新安装E-OBAR但是环境变为45为主库,48为备库。在进行“演练切换”的时候成功了。然后环境为48为主库,45为备库。但是再次进行“演练切换”却仍然出现相同的报错。
(5) 在主库48上我通过远程连接备库,发现了问题
[oracle@redhat4-8 admin]$ sqlplus sys/oracle@redhat4_5_obar as sysdba
(4) 重新安装E-OBAR但是环境变为45为主库,48为备库。在进行“演练切换”的时候成功了。然后环境为48为主库,45为备库。但是再次进行“演练切换”却仍然出现相同的报错。
(5) 在主库48上我通过远程连接备库,发现了问题
[oracle@redhat4-8 admin]$ sqlplus sys/oracle@redhat4_5_obar as sysdba
SQL*Plus: Release 10.2.0.3.0 - Production on Tue Jun 18 10:41:59 2013
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
SQL>
SQL>
SQL>
SQL> show parameter name;
SQL>
SQL>
SQL> show parameter name;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string /data/oradata/OBAR, /data/orad
ata/OBAR, /data/oradata/OBAR,
/data/oradata/OBAR
db_name string OBAR
db_unique_name string redhat4_5_OBAR
global_names boolean FALSE
instance_name string OBAR
lock_name_space string
log_file_name_convert string /data/oradata/OBAR, /data/orad
ata/OBAR
service_names string OBAR
发现我连接的竟然是redhat4_5_OBAR这个实例,我就怀疑45上面开了多个oracle实例
后面查询果然有一个OBAR的oracle实例在运行,而且通过命令sqlplus sys/oracle@redhat4_5_obar as sysdba 连接上的还是OBAR这个实例,显然这个实例不存在在dataguard的配置中,所以在进行“演练切换”的时候oracle报错了。
------------------------------------ ----------- ------------------------------
db_file_name_convert string /data/oradata/OBAR, /data/orad
ata/OBAR, /data/oradata/OBAR,
/data/oradata/OBAR
db_name string OBAR
db_unique_name string redhat4_5_OBAR
global_names boolean FALSE
instance_name string OBAR
lock_name_space string
log_file_name_convert string /data/oradata/OBAR, /data/orad
ata/OBAR
service_names string OBAR
发现我连接的竟然是redhat4_5_OBAR这个实例,我就怀疑45上面开了多个oracle实例
后面查询果然有一个OBAR的oracle实例在运行,而且通过命令sqlplus sys/oracle@redhat4_5_obar as sysdba 连接上的还是OBAR这个实例,显然这个实例不存在在dataguard的配置中,所以在进行“演练切换”的时候oracle报错了。
解决方案:
在备库45上面关闭OBAR实例,重新进行“演练切换”一切OK,问题解决了!!;
在备库45上面关闭OBAR实例,重新进行“演练切换”一切OK,问题解决了!!;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25269462/viewspace-764175/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/25269462/viewspace-764175/