暂无图片
oracle10g dataguard不同步
我来答
分享
暂无图片 匿名用户
oracle10g dataguard不同步

问题描述:

通过RMAN全量+增量的还原,创建了备库。

服务器是windows server 2008R2

数据库版本: Oracle 企业版 10.2.0.4.0

主库:

主库7组 redo,其中4组是standby log

SELECT GROUP#,SEQUENCE#,ARCHIVED,STATUS FROM v$standby_log;

    GROUP#  SEQUENCE# ARC STATUS

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

         4          0 YES UNASSIGNED

         5          0 YES UNASSIGNED

         6          0 YES UNASSIGNED

         7          0 YES UNASSIGNED

告警日志显示

Error 12170 received logging on to the standby

Suppressing further error logging of LOG_ARCHIVE_DEST_2


select dest_name,error from v$archive_dest;

LOG_ARCHIVE_DEST_2

ORA-12170: TNS:Connect timeout occurred

但是tnsping orclsty和tnsping orcl都是通的


通过以下方法处理没有处理成功。

alter system set log_archive_dest_state_2=defer;

alter system switch logfile;

alter system set log_archive_dest_state_2=enable;



oracle 10g 备库

警告日志提示

ORA-00314: log 1 of thread 1, expected sequence# 74755 doesn't match 0

ORA-00312: online log 1 thread 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCLSTY\REDO01.LOG

昨晚DG后,发现本地盘上只有3个redo(redo01.log,redo02.log,redo03.log),没有redo04-07


问题分析:

当时全备的时候,并没有创建4组standby log,之后做增量恢復到备库的时候恢复了主库的所有参数变更。

之前备库的防火墙没有关闭,现在关闭了。


请问,在不重做备库和不重启主库的情况下,是否有办法修复这个问题?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
📵

如果你只是想单纯的增加你丢失的日志组的话。参考下面命令,

1. Stop Redo apply:

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;


2. Set STANDBY_FILE_MANAGEMENT to MANUAL.

SQL> ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT='MANUAL';


3. Add Redolog File Group:

SQL> ALTER DATABASE ADD LOGFILE GROUP 4 ('\.log') SIZE 100M;

Add as many Redo Logfile Groups (or Members) you want to add.


4. Set STANDBY_FILE_MANAGEMENT to AUTO.

SQL> ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT='AUTO';


5. Start Redo Apply (Managed Recovery):

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

暂无图片 评论
暂无图片 有用 0
📵

如果log_archive_dest_2参数有问题,看一下是不是用的都是一个service。而且一主一备的情况下,备库log_archive_dest_state_2配置与否都不会影响日志接收,看一下alter日志的具体报错,主库参数我写了个,可以参考下alter system set log_archive_dest_2='SERVICE=orclsty LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orclsty' sid='*';备库查看select process,client_process,sequence#,status,block#,blocks from v$managed_standby;看一下mrp的进程状态什么样

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏