MySQL Status Innodb_row_lock_time_avg 数据库状态作用意思及如何正确
本站中文解释
变量
InnoDB_row_lock_time_avg变量是MySQL状态变量,用来记录平均每次锁定一行数据时间,单位是微秒。有经验的DBA可以根据该值识别出锁定瓶颈,对其进行相应调整,从而优化MySQL性能。
InnoDB_row_lock_time_avg变量可以在以下两个地方设置:
一是可以在my.cnf文件中设置InnoDB_row_lock_time_avg变量,在配置文件中增加如下语句:
innodb_status_row_lock_time_avg=m
可以把m设置成一个正整数,表示MySQL会在每次统计InnoDB锁定时间时,会对对应最store记录多次取样,时间间隔会设定为m微秒,这样就可以跟细一些把握锁定行的情况了。
二是可以在MySQL的sql语句中的设置InnoDB_row_lock_time_avg变量,使用如下语句:
set global innodb_status_row_lock_time_avg = m
不过要知道,来自SQL语句的设置只是暂时设置,MySQL服务重新启动后即变回默认的设置了,对于需要永久设置的内容,最好是把相关配置加到my.cnf文件中去。