修改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时无法启动报如下错误:
解决方法如下:
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的主要内容,如果未能解决你的问题,请参考以下文章
Mysql修改用户密码报错ERROR 1054 (42S22): Unknown Column 'Password' In 'Field List'解决办法
mysql5.7.12报错如下情况导致无法连接数据库应该怎么办?