有同事说,最近做的DG同步,备库日志同步,与主库相比,又延迟了半天,今天又重做了DG,刚开始,只有15分钟延迟,结果现在,又差了半天。这个DG环境,同一主库,配置了4个备库,关键是其他3个备库都正常,唯独这个不正常主库是RAC,4个备库是单机

这不正常呀!
要说补丁,其他两个也没有打补丁,枣阳同步正常。于是,我前去看看。
1.检查环境
1.1 登录上去,检查数据库状态,
select open_mode from v$database;
open read only
select process,status from v$managed_standby;
...
rfs writing
mrp applying
...
1.2.检查备库的归档日志,已经到最新
1.3.检查日志应用
select thread#,sequence#,applied,to_char(first_time,'yyyy-mm-dd hh24:mi:ss') from v$archived_log where first_time>sysdate-1/2 order by 4,1,2;
。。。
。。。
发现最新应用的日志,在7小时以前。
等30分钟去看,又往前走了几个。
1.4 想到,是否设置了延迟,检查,也没有启用 BROKER,应该不会,后面也可以看到,没有设置。
。。。那就怪了。
1.5 检查备用日志文件
select thread#,group#,sequence#,bytes/1024/1024 ,status from v$log;
主库联机日志有3/线程,3个线程,一共9组
select thread#,group#,sequence#,bytes/1024/1024 ,status from v$standby_log;
备库备用日志文件有12组,应该没有问题
但在检查备库的联机日志文件时,发现备库上的联机日志文件每个线程有4组联机文件,以为是这个
把备库日志应用停了,删除备库联机文件多的一组,在停时,有这个一个提示:

没有使用实时应用。
把备用日志文件删除后,重新启用日志应用,没有报不是日志应用了,以为已经解决,但等了半小时,还是没有太大变化。看来问题没有找到。
1.6 检查备库的日志设置
show parameter dest_
发现备库的log_archive_dest_2=还是以前老的位置,fal-server是正确的,于是重新调整 log_archive_dest_2=新的主库
但效果不明显,看来不是这个问题
1.7 检查备库内存使用
free

发现内存只使用了600兆,剩余的也很少,全都在缓存了,难道是这个问题吗?
于是查看内核参数设置,
没有配置大页内存,开启了透明大页

于是进行调整,
调整后,内存上来了

但应用效果没有明显改善
1.8 你怎么知道没有改善呢
我们看看IO吧

发现这个IO的写,只有1M/S ,这个是否太慢了,是IO性能有问题吗?
1.9 检查IO

使用DD命令测试了一下文件的写入,怎么也有几百兆每秒,看来不慢呀。
有那怪了。
1.10 使用SQL语句查一下日志延迟情况

我的乖乖,日志传输没有问题,但日志应用已经接近8小时了。
1.11 检查日志应用速率

平均只有500K/S
这也太慢了,也可以解释,DD快,但磁盘IO慢的原因,不是存储慢,是没有写呀。
怎么回事
1.12 检查等待事件

查看备库,到底在干什么,结果,发现了这个妖怪,db file async i/o submit
马上查AI

看起来异步IO没有起作用吧
1.13 查看异步IO相关参数
以前遇到这个等待事件,一般是 FILESYSTEMIO_OPTIONS 设置有问题,没有开启异步IO
show parameter FILESYSTEMIO_OPTIONS
----
none

看来问题找到了,以前另外一个单位也是这个参数导致应用慢,只是没有人关注。
2.解决问题
2.1 修改参数 FILESYSTEMIO_OPTIONS=setall
并重启

2.2 检查等待事件

看来这个等待事件消失
2.3 检查IO

IO达到 9m/s,至少比前面1M/S快了呀
2.4 检查日志应用速率

看起来,应用速率达到4m/s,之前是500k/s,快了8倍吧。
2.5 再去看日志应用延迟
这个延迟已经在缩小了,而且比较快
半个小时以后,发现基本追平


到此,问题解决。
3.其他库为什么没有这个问题呢
其中一个WINDOWS,与LINUX不一样,没有去看。
另外两个是LINUX,一个是打了补丁,但filesystemio_options=none ,没有问题
另外一个,是设置了 filesystemio_options=asynch,所以没有问题。
那个设置为none的备库也没有问题,不知道与补丁有关系没有,后面找时间确认一下。
4.找到我
加我微信:zq24803366,备注:水煮数据库, 我拉你入群,一起交流数据库吧

被折叠的 条评论
为什么被折叠?



