访问网站突然发现出现了数据库连接失败的界面,未收到服务器告警通知,应该不是访问量大,导致mysql服务崩掉的情况。
登录服务器,查看下mysql服务是否正常,发现服务正常,登录到mysql,查询数据没有任何问题。
//查看mysql服务的运行状态
service mysqld status
//开启mysql服务
service mysqld start
//停止mysql服务
service mysqld stop
可能造成的原因是连接未关闭的数量过多,我们这里采用wordpress的表修复功能进行修复。
//wp-config.php 添加这句
define( 'WP_ALLOW_REPAIR', true);
访问:http://你的域名/wp-admin/maint/repair.php,可以看到修复操作,修复完成之后,可以正常访问了,此时应该关闭修复数据库这个功能入口。
这里再对MySQL数据库做一些调整,比如修改最大的连接数,修改连接超时的时间,修改完成之后重启数据库。
查看数据库最大连接数,修改连接数,修改/ect/my.cnf,max_connections=1000
show variables like '%max_connections%';
查看连接超时失效时间,修改等待时间,修改/ect/my.cnf,wait_timeout=3600
show global variables like '%wait_timeout';