当前位置:网站首页>DataGuard日常维护常见问题之数据同步异常
DataGuard日常维护常见问题之数据同步异常
2022-08-02 22:54:00 【DBA大董】
造成日志无法传到standby 的原因有:
- standby 服务器异常
- standby 相应的进程异常
- standby 监听器服务异常
日志传输问题
1、一般通过以下语句查看primary数据库和standby数据库的归档日志的sequence是否一样。
先在primary数据库执行
SQL> alter system switch logfile;
System altered.
SQL> select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
38
如果一样说明没有问题,
如果不一样说明日志没有归档。
首先确认standby是否开启了日志应用
SQL> alter database recover managed standby database disconnect from session;
如果已经开启。再确认归档位置是否可用。
SQL> select dest_name,status,error from v$archive_dest;
DEST_NAME
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
STATUS ERROR
------------------ -----------------------------------------------------------------
LOG_ARCHIVE_DEST_1
VALID
LOG_ARCHIVE_DEST_2
VALID
我遇到过这种情况:监听器没有监听到数据库
在操作系统Oracle用户登录查看监听器是否启动,lsnrctl stauts , lsnrctl start
用tnsping两个数据库是否正常,如果没有问题,在primary 数据库日志切换一次,看standby是否接收到归档日志了。
这几步没有问题就考虑数据库启动参数文件配置的问题了。
具体问题具体解决了。
排查思路
当 DG 出现故障时,第一时间检测 alert 日志,服务器 OS 日志,网络是否通畅。
当DG出现日志不能传输到备库:
一、查看是不是TNS配置错误和监听配置错误。
二、主备库初始化参数文件配置错误(如archive_log_dest文件位置错误)。
三、备库控制文件过旧,从主库生成一个STANDBY CONTROL过去。SQL> alter database create standby controlfile as '/bnerp_data1/bnerp/cntrl01.dbf';。
四、备库是否应用了Failovers 。
GAP处理
下面就简单说说手工处理日志GAP的步骤:
1、在备库检查是否有日志缺失
SQL> select * from V$ARCHIVE_GAP;
2、在主库中查询缺失的日志的所在路径和名称
SQL> SELECT NAME FROM V$ARCHIVED_LOG
如果把日志移动到其他路径,则把日志所在路径换成当前实际所在路径。
3、把日志拷贝到备库上
4、在备库上手工注册上一步中从主库拷贝来的日志
SQL> ALTER DATABASE REGISTER LOGFILE '路径';
5、观察备库的alert日志信息
6、检查备库是否还有日志GAP
SQL> select * from V$ARCHIVE_GAP;
no rows selected
如果有行返回,则重复2-5步,直到查询结果是"no rows selected"。
如果日志只是临时移动到其他地方,过后会再移回原路径,则不用这么大费周折手工去手工处理了,把日志拷回原处后FAL会自动处理GAP。
常用SQL
---查询线程号
SELECT UNIQUE THREAD#, MAX(SEQUENCE#) OVER(PARTITION BY THREAD#) LAST FROM V$ARCHIVED_LOG;
SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;
---查询未应用日志(仅备库)
select thread#,sequence#,first_time,next_time,applied from v$archived_log where applied='NO';
select name,open_mode,protection_mode,database_role,switchover_status from v$database;
select DEST_NAME,STATUS,ERROR from v$archive_dest;
select PROCESS,CLIENT_PROCESS,SEQUENCE# ,STATUS from v$managed_standby;
archive log list;
边栏推荐
- Technology Sharing | How to do assertion verification for xml format in interface automation testing?
- js基础知识整理之 —— 五种输出方式
- CentOS7 安装MySQL 图文详细教程
- qt静态编译出现Project ERROR: Library ‘odbc‘ is not defined
- 微信小程序实现lot开发09 接入微信登录
- js基础知识整理之 —— 字符串
- 最近公共祖先(LCA)学习笔记 | P3379 【模板】最近公共祖先(LCA)题解
- 高数---二重积分
- centos7安装mysql5.7步骤(图解版)
- 反弹shell原理与实现
猜你喜欢
![[论文总结] 深度学习在农业领域应用论文笔记10](/img/e8/0ba741980495cd81ca30bf269d1111.jpg)
[论文总结] 深度学习在农业领域应用论文笔记10

CTF命令执行题目解题思路

图像识别从零写出dnf脚本关键要点

简单聊聊MySQL中的六种日志

No-code development platform form styling steps introductory course

2022第十一届财经峰会:优炫软件斩获双项大奖

I have been in the software testing industry for nearly 20 years, let me talk to you about today's software testing

R语言自学 1 - 向量

Merge two excel spreadsheet tools

CentOS7 安装MySQL 图文详细教程
随机推荐
Nlog自定义时间
What is the matter that programmers often say "the left hand is knuckled and the right hand is hot"?
学习基因富集工具DAVID(3)
脂溶性胆固醇-聚乙二醇-叠氮,Cholesterol-PEG-Azide,CLS-PEG-N3
数字化转型巨浪拍岸,成长型企业如何“渡河”?
Strict feedback nonlinear systems based on event trigger preset since the immunity of finite time tracking control
华为设备配置BFD与接口联动(触发与BFD联动的接口物理状态变为Down)
科研用Cholesterol-PEG-NHS,NHS-PEG-CLS,胆固醇-聚乙二醇-活性酯
Token、Redis实现单点登录
The latest real software test interview questions are shared. Are you afraid that you will not be able to enter the big factory after collecting them?
ssm整合(三)Controller 和 视图层编写
KubeSphere监控失效为NAN的问题
mPEG-Cholesterol,mPEG-CLS,甲氧基-聚乙二醇-胆固醇可用于脂质体制备
scala 集合通用方法
合并两个excel表格工具
CKAN教程之在 AWS 上部署 CKAN 应用程序
【C语言】带头双向循环链表(list)详解(定义、增、删、查、改)
服务间歇性停顿问题优化|得物技术
msys2下载地址
js基础知识整理之 —— 闭包