发生状况:数据库online.log未有更新,持续时间一天(正常情况下每隔5分钟会checkpoint一次写入log)
检查步骤:
1. onstat -,数据库状态On-Line(数据库连接/查询等均正常)
2. onmode -c,强制checkpoint,online log未更新
3. onstat -R,dirty =0(咨询厂商,[b][color=red]当系统脏数据为0时存在不做checkpoint可能[/color][/b],建议建表/insert/update等动作验证)
[color=red]0 dirty[/color], 400000 queued, 400000 total, 524288 hash buckets, 2048 buffer size
start clean at 2% (of pair total) dirty, or 62 buffs dirty, stop at 1%
2758861 priority downgrades, 0 priority upgrades
4. create test table,onstat -R
[color=red]29 dirty[/color], 400000 queued, 400000 total, 524288 hash buckets, 2048 buffer size
5. onstat -m,log未更新,考虑到checkpoint在配置表中定义为5分钟执行一次,onmode -c,再次检查online.log,已有相关更新
6. 间隔十分钟后再次检查online.log,已恢复自动间隔的checkpoint(onstat -R 检查dirty数,与推测一致)
Question:
checkpoint的发生时机:
超过检查点间隔设定值,通常这个值在 onconfig 配置文件的 CKPTINTVL 参数中设置[color=red]---与此次现象不匹配[/color]
物理日志达到总大小的 75%[color=red]---未达到[/color]
执行诸如增加数据库空间、增加块(chunk)之类的管理事件[color=red]--未进行此类动作[/color]
执行 onmode -c[color=red]--已执行但未有变化[/color]
检查步骤:
1. onstat -,数据库状态On-Line(数据库连接/查询等均正常)
2. onmode -c,强制checkpoint,online log未更新
3. onstat -R,dirty =0(咨询厂商,[b][color=red]当系统脏数据为0时存在不做checkpoint可能[/color][/b],建议建表/insert/update等动作验证)
[color=red]0 dirty[/color], 400000 queued, 400000 total, 524288 hash buckets, 2048 buffer size
start clean at 2% (of pair total) dirty, or 62 buffs dirty, stop at 1%
2758861 priority downgrades, 0 priority upgrades
4. create test table,onstat -R
[color=red]29 dirty[/color], 400000 queued, 400000 total, 524288 hash buckets, 2048 buffer size
5. onstat -m,log未更新,考虑到checkpoint在配置表中定义为5分钟执行一次,onmode -c,再次检查online.log,已有相关更新
6. 间隔十分钟后再次检查online.log,已恢复自动间隔的checkpoint(onstat -R 检查dirty数,与推测一致)
Question:
checkpoint的发生时机:
超过检查点间隔设定值,通常这个值在 onconfig 配置文件的 CKPTINTVL 参数中设置[color=red]---与此次现象不匹配[/color]
物理日志达到总大小的 75%[color=red]---未达到[/color]
执行诸如增加数据库空间、增加块(chunk)之类的管理事件[color=red]--未进行此类动作[/color]
执行 onmode -c[color=red]--已执行但未有变化[/color]