联系我们 关于我们 联系电话:18613081114

技术支持

介绍

数据库如何做检查,异常故障如何检查和处理。数据库工程师带你了解如何查看数据库的异常处理! 检查方法: 为了保证数据的一致性,数据库采用检查点(checkpoint)机制将内存中的

看了又看
联系我们
  • 广州鑫瑞信息科技有限公司

  • 客服热线:18613081114
  • 客服QQ:3297418313
  • 公司座机:020-34037185
  • 地址:广州市海珠区广州大道南880和平商务中心北塔1613
技术支持 当前位置:首页 > 技术支持 >
【数据库工程师带你看】数据库检查点异常故障的检查及处理
  • 时间:2018-12-27 11:20
  • 编辑:admin
  • 点击:





数据库如何做检查,异常故障如何检查和处理。数据库工程师带你了解如何查看数据库的异常处理!


【数据库工程师带你看】数据库检查点异常故障的检查及处理
检查方法:

 

为了保证数据的一致性,数据库采用检查点(checkpoint)机制将内存中的脏页刷新到磁盘中,同时清空旧的物理日志。数据库在执行checkpoint操作时,会阻塞访问临界区,从而导致数据库的SQL操作都无法执行。如果执行checkpoint操作的时间过长,则会导致checkpoint时间内的呼叫无法接通,从而导致限呼,严重时会导致虚假话务浪涌的现象。

处理方法:

checkpoint的性能主要与数据库的配置相关,具体包括如下配置项。

  • BUFFERS

BUFFERS是共享内存的主要配置参数。BUFFERS的值越大,则数据库读写的命中率就会越高,系统的整体性能也会提高,但数据库checkpoint的时间也会越长。BUFFERS的大小一般为内存大小的1/4,如果内存空间足够大,可以保证checkpoint的时间足够长,则该参数设置得越大越好。

  • LRUS

LRUS队列的多少直接影响Informix数据库磁盘的写性能。LRUS的值越大,则LRU队列的长度就会越小,checkpoint时间也会越短,各应用进程(包括oninit进程)占用系统的时间也会越少。建议将该参数配置为32。

  • LRU_MAX_DIRTY/LRU_MIN_DIRTY

该参数为脏页在所有页面中所占的最大/最小比例,其大小直接影响Informix数据库的写命中率。LRU_MAX_DIRTY/LRU_MIN_DIRTY的值越大,则写命中率就会越大,系统性能也会提高,但数据库checkpoint的时间却会成比例地急剧上升。该参数与系统磁盘的IO性能相关,建议配置为2/1。

  • CLEANERS

CLEANERS为cleaner线程的数量。当内存中脏页的数量达到最大比例(BUFFERS×LRU_MAX_DIRTY%)时,数据库就会启动cleaner线程将缓冲池中的脏页写到硬盘中;当内存中脏页的数量达到最小比例(BUFFERS×LRU_MIN_DIRTY%)时,cleaner线程就会停止工作。

cleaner线程越多,脏页就会越及时地刷新到磁盘,而当数据库checkpoint时需要刷新的脏页也就越少,相应的checkpoint时间就越短。通常,如果磁盘数目和数据库空间数目较多,则要求CLEANERS配置的值较大些(一个chunk至少配置一个cleaner线程),但CLEANERS配置的值太大也会稍稍降低系统性能。

  • CHKPTINTVL

该参数影响checkpoint的频率。如果问题原因是checkpoint的频率太大,则可以考虑调整执行的时间间隔。但是,调整该参数后,数据库HDR恢复时需要同步的逻辑日志会增多,从而影响数据库恢复的时间。

  • PHYSFILE

物理日志的大小也会影响checkpoint的频率,当物理日志文件的大小达到75%时,数据库就会执行checkpoint。如果通过执行onstat命令查出是物理日志文件被快速写满导致文件大小达到75%,则可以考虑增加物理日志的大小。

通常,如果现网需要调整checkpoint的时间,则需要注意协调好上述参数的均衡,不能仅仅调整一个参数。有时,磁盘的读写性能也会影响checkpoint的时间。例如数据空间如果建立在内置磁盘上,由于内置磁盘通常不做raid,所以其读写性能低于外置磁盘,这可能会导致checkpoint的时间过长。


广州鑫瑞信息,专业机房IT运维服务商,专注小型机,服务器X86,存储设备,网络设备的IT运维维护,专业资深的小机/X86/存储/网络/数据库工程师团队。



上一篇:X86服务器常见的故障案例以及诊断排除--广州服务器上门维修服务

下一篇:【干货篇】八组日常运维小技能--华南IT运维技术