修改mysql服务器的时间,导致mysql报错InnoDB: Waiting for page_cleaner to finish flushing of buffer pool

Posted 雍州无名

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改mysql服务器的时间,导致mysql报错InnoDB: Waiting for page_cleaner to finish flushing of buffer pool相关的知识,希望对你有一定的参考价值。

于同事为了测试,需要将mysql的linux服务器时间调整为之前的时间:

date -s "2016-10-21 12:39:42"

在重启mysql时无法启动报如下错误:

修改mysql服务器的时间,导致mysql报错InnoDB:

解决方法如下:

1.首先将linux的系统时间恢复为当前的时间

/usr/sbin/ntpdate time2.aliyun.com

2.然后再重启mysql数据库

service mysql restart

此时数据库已经正常启动了。然后再次关闭数据库

service mysql stop

3.再次修改系统时间

date -s "2016-10-21 12:39:42"

4.最后启动mysql数据库

service mysql start

此时发现mysql对应的时间也已经更改。

总结:

1.MySQL所在的服务器的时间更改,MySQL的缓存的时间戳依据的是主机的时间;在我们手动向前修改时间,会出现MySQL退出时要求清空比生成时间“还早”的缓存而导致了锁死。
2.如果要修改主机时间,应该先关闭mysql后在修改,修改完成后再启动mysql



以上是关于修改mysql服务器的时间,导致mysql报错InnoDB: Waiting for page_cleaner to finish flushing of buffer pool的主要内容,如果未能解决你的问题,请参考以下文章

mysql8 修改my.ini配置 重启服务 报错

Mysql修改用户密码报错ERROR 1054 (42S22): Unknown Column 'Password' In 'Field List'解决办法

MySQL主从同步报错,server-id一致导致报错

mysql5.7.12报错如下情况导致无法连接数据库应该怎么办?

mysql的UPDATE语句,程序没报错,但没生效。求高手指点!急急急

mysql连接数太小,导致网站报错mysql:Too many connections