ITPub博客

首页 > 数据库 > Oracle > 【TUNE_ORACLE】Oracle检查点(四)检查点对redo日志的影响和redo日志大小设置建议

【TUNE_ORACLE】Oracle检查点(四)检查点对redo日志的影响和redo日志大小设置建议

原创 Oracle 作者:Attack_on_Jager 时间:2021-08-23 10:12:52 2 删除 编辑
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

说明

检查点系列相关文章地址:

Oracle检查点(一)检查点(Checkpoint)概念介绍: /69992972/viewspace-2787595/

Oracle检查点(二)检查点性能: /69992972/viewspace-2787789/

Oracle检查点(三)增量检查点四个关键参数介绍: /69992972/viewspace-2787943/

Oracle检查点(四)检查点对redo日志的影响和redo日志大小设置建议: /69992972/viewspace-2788206/

Oracle检查点(五)创建并利用Statspack定位检查点故障: /69992972/viewspace-2788418/


检查点和redo日志的关系

每次切换日志时都会发生一次检查点。如果上一个检查点已在进行中,由日志切换引起的检查点将覆盖当前检查点。

此时就需要大小合适的 redo 日志,以避免因频繁的日志切换而引起不必要的检查点。另外, 增量检查点目标和日志尾之间的间隔也会受“最小在线日志文件大小的 90%”设置所限制。这样做的目的是可确保在大多数情况下,日志切换不必等待检查点。因此,日志文件大小应配置得够大才行(但不能太大,至于设置多大,下文有建议)。 日志文件过小会增加检查点活动并降低性能 。Oracle官方也建议用户将所有在线日志文件设置为同一大小,且每个线程至少拥有两个日志组。若要监视日志切换发生的速度,以及随后的检查点产生的速度,可以查看alert日志。


redo日志大小设置建议

先看一个alert日志中日志切换的例子后再予以说明:

Fri Aug 6 12:16:57 2021

Thread 1 advanced to log sequence 1661

  Current log# 1 seq# 1661 mem# 0: /oracle/oradata/redo01.log

Thread 1 advanced to log sequence 1662

  Current log# 2 seq# 1662 mem# 0: /oracle/oradata/redo02.log

Fri Aug 6 12:18:21  2021

Thread 1 advanced to log sequence 1663

  Current log# 3 seq# 1663 mem# 0: /oracle/oradata/redo03.log

Thread 1 advanced to log sequence 1664

  Current log# 1 seq# 1664 mem# 0: /oracle/oradata/redo01.log

Fri Aug 6 12:21:17  2021

Thread 1 advanced to log sequence 1665

  Current log# 2 seq# 1665 mem# 0: /oracle/oradata/redo02.log


以上不难看出,redo日志每2-3分钟切换一次,日志切换过于频繁了,说明redo日志的大小太小了。日志如果 redo 日志每 3 分钟切换一次,就能感觉到数据库的性能降低了。这表明 redo 日志不够大,不能有效地处理该事务负载。因此可以得出结论: 过于频繁的检查点和日志文件切换问题会影响数据库性能!

那么如何设置合适的redo日志大小呢?

根据官方建议和本人工作经验,重做日志切换应该大约每 20-30 分钟左右产生一次最为合适。如果它们切换太频繁,可以通过 V$LOG 检查当前重做日志文件的大小,并根据平均切换频率,重新创建更大的重做日志组,然后用“ALTER SYSTEM SWITCH LOGFILE;” 切换redo日志几次,使得当前重做日志是刚创建较大的重做日志文件之一( 要确保之前小的redo日志是“INACTIVE”状态),最后使用“ALTER DATABASE DROP LOGFILE XXX ;”命令删除较小的重做日志组。

另外,将重做日志文件分布在多个物理磁盘上,也可以提高日志切换期间的性能。

补充说明:

如果等待日志文件切换完成,还需要添加一个或多个重做日志组来解决 Statspack 报告中的相关等待事件。


来自 “ ITPUB博客 ” ,链接:/69992972/viewspace-2788206/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
在某银行任职DBA,拥有多年数据库运维经验,擅长Oracle,MySQL。尤其擅长Oracle的SQL优化,数据库性能调优,数据库备份、恢复与迁移。拥有的认证:OCM 12c,OCM 11g,MySQL OCP,RHCE,阿里云ACP,巨杉SCDP,软考系统集成工程师认证,Oracle Iaas OCA,OBCA,TDSQL认证,TBase认证

注册时间:2021-01-11

  • 博文量
    102
  • 访问量
    260850


http://www.vxiaotou.com