暂无图片
AWR分析报告问题求助:请问下,这个awr 中 log file sync 高 是不是和 enq: TX - row lock contention 有相关,这个时间段系统卡
我来答
分享
修身
2023-11-08
AWR分析报告问题求助:请问下,这个awr 中 log file sync 高 是不是和 enq: TX - row lock contention 有相关,这个时间段系统卡
我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
张sir

1、你的log file sync和log file parallel write是比较高的,可以看下磁盘的情况

2、log file sync 跟enq: TX - row lock contention 没关系,enq: TX - row lock contention是行锁,不会影响redo 落盘。

暂无图片 评论
暂无图片 有用 14
打赏 0
徐孝亮

enq: TX - row lock contention是受log file sync的影响,而不是导致log file sync的原因。


至于为什么会产生log file sync,原因有很多:

1、持续性IO链路响应较慢,表现Log file parallel write等待时长平均较长,同样log file sync竞争严重。

2、瞬间性IO链路响应较慢,表现为Log file parallel write等待时长瞬间较长例如达到了几十秒甚至更高,log file parallel write等待平均时长很短,log file sync竞争严重。

3、Oracle 如下新特性导致:

  • Oracle 11.2.0.3开始默认的LGWR adaptive,LGWR在post/wait和polling模式自适应调整导致严重的log file sync
  • Oracle 12C Adaptive Scalable Log Writer,LGWR会自动在 single<-->scalable 之间进行切换导致严重的log file sync
  • Oracle 19C BUG 30614411 - LMS IGNORING MESSAGE HANDLER FOR SCN MESSAGE, ORIGINATING INSTANCE WAITING VERY LONG FOR BROADCAST COMPLETION, 此BUG描述,主要是接收实例lms进程没有处理SCN广播消息,这延迟了SCNACK消息的发送,导致LGWR发出的广播延迟完成

4、重做日志组效率最好相差不大,不然会出现某个member影响其他member写入性能


log file sync优化:

1、硬件:提高IO链路能力。RAID、HBA、SSD、ADG异步LGWR等架构调整

2、代码:优化业务SQL,降低系统的IO负载;业务批量提交

3、Oracle 新特性设置是否合理

4、LGWR使用nowait、batch方式。异步、batch等待lgwr完成日志写入,但是需要避免数据库意外关闭,数据可能存在丢失

暂无图片 评论
暂无图片 有用 5
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
Oracle 数据库登录不上去 但是可以用,报错:ORA-12518 监听程序无法分发客户机连接
回答 3
process满了,杀掉一些连接进程
LISTENER.ORA里ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)这句的含义?
回答 3
已采纳
BEQ(BasicEthernetQuickStart)同一台主机进程之间的快速通信协议
Oracle数据库 要在rac环境下处理dg的gap问题,已经把缺失的归档放到节点1的文件目录下了 ,是直接注册,还是需要把文件放到asm里?
回答 1
已采纳
如果放在备库的归档目录不用注册,自己会apply.其他目录则需要注册。
DG数据库无法同步
回答 6
3795
Oracle12201 RAC,开启归档,不修改cluster_database参数的方式和修改cluster_database参数的方式有什么差异或者隐患?
回答 2
已采纳
开归档和clusterdatabase这个参数没有必然的联系。RAC环境下默认所有实例都是True,无需修改。开归档的过程是先关闭其他节点,然后留一个节点设置归档路径,干净的关闭实例,然后启动到mou
不用plsql DEVEPLOPE导出存储过程,函数?有现成的脚本吗?
回答 1
使用exp/expdp的工具,就可以导出。如果想转换成文本,其实从dbasource视图里直接读取出来就可以。
从oracle用kettle往mysql导数据,做的定时抽取,因为有时抽取不成功,怎样判断让他抽取不成功后重新抽取?
回答 1
1、在kettle的转换中,添加一个错误处理步骤,将错误信息记录到日志文件或数据库表中,并设置重试次数和间隔时间。2、在kettle的作业中,添加一个检查点步骤,根据源表和目标表的记录数或其他条件判断
Oracle用sys账户创建一个Scott用户的表格和直接在Scott用户创建一个同样的表格有什么区别吗?
回答 1
已采纳
没有区别,如果你的scott用户有默认表空间,这个表就会建在默认表空间里,如果没有默认表空间,就会建在users的表空间里。SQL&gt;createusertestidentifiedbytestd
Oracle中连接与会话的关系?
回答 1
已采纳
“连接”不是“会话”的同义词,在一个连接上可以建立0个、1个或多个会话。各个会话之间是独立的,即使它们共享数据库上的同一个物理连接。一个会话中的提交不会影响该连接上的任何其他会话。一个连接上的各个会话
Oracle报错显示无法从套接字读取更多数据,怎么解决?
回答 1
请描述清楚问题,这是在执行什么操作的时候报错的?