暂无图片
分享
猫瞳映月
2020-03-03
Oracle数据库性能分析问题
暂无图片 50M

客户有一套数据库特别慢,业务系统上点一下要等20-25秒才反应过来,通过墨天轮AWR分析工具暂无法准确定位问题,请问专家们,能否帮我分析下具体原因?

收藏
分享
10条回答
默认
最新
猫瞳映月
暂无图片 评论
暂无图片 有用 0
猫瞳映月
暂无图片 评论
暂无图片 有用 0
猫瞳映月
升级问题到: 潜在风险
暂无图片 评论
暂无图片 有用 0
fdsdfs

关闭 DRM。
参考命令:alter system set “_gc_policy_time”=0 #INSTANCE# scope=spfile;
闭集群 Undo Affinity,降低集群交互,避免触发相关 BUG。
参考命令:alter system set “_gc_undo_affinity”=FALSE #INSTANCE# scope=spfile;
隐含参数 _undo_autotune 负责 undo retention(即 undo 段的保持时间)的自动调整,若由 Oracle 自动负责 undo retention,则 Oracle 会根据事务量来占用 undo 表空间,可能会形成 undo 表空间的争用,建议将其关闭。
参考命令:alter system set “_undo_autotune”=FALSE #INSTANCE#;
Oracle 默认启用 _use_adaptive_log_file_sync 参数,使得 LGWR 进程写日志的方式能自动在 post/wait 和 polling 两种方式之间进行取舍,可能会导致比较严重的写日志等待(log file sync的平均单次等待时间较高),建议关闭此功能。
参考命令:alter system set “_use_adaptive_log_file_sync”=FALSE #INSTANCE#;

暂无图片 评论
暂无图片 有用 0
猫瞳映月
暂无图片 评论
暂无图片 有用 0
猫瞳映月
暂无图片 评论
暂无图片 有用 0
猫瞳映月

感谢楼上专家解答,后面新上传的两份报告是昨天的报告。

暂无图片 评论
暂无图片 有用 0
章芋文

AWR一般不能定位到细节问题,何况你的AWR报告时间跨度这么大。
业务上点一下20-25秒才有反应:之前是多长时间,是最近才有这种情况吗,是每次都这么长时间吗,每个操作都这么慢吗?

首先要定位问题,在点击按钮的那一刻,在数据库种查看活动会话等待事件,或者生成点之前到点之后的ASH报告,定位到具体问题或SQL。再才能针对问题去优化。

另外我看到awr报告中显示磁盘的I/O能力较差。

暂无图片 评论
暂无图片 有用 0
章芋文

目前看到的就2个问题,SQL性能差+存储性能差。所以可以优化TOP SQL,或者升级存储。
平均每次执行超过10秒的SQL都需要关注和优化
image.png

另外,db file sequential read、db file scattered read、log file sync平均等待时间都在10ms,说明存储性能不行。

暂无图片 评论
暂无图片 有用 0
猫瞳映月
问题已关闭: 问题已经得到解决
暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏