最近在进行网站检查的时候突然发现我的一个子网站挂了,提示error establishing a database connection
, 如果是网站刚建立那好解决,80%的概率是数据连接参数不正确,或者是数据库端口没有开放
但是我这个网站运行很长一段时间了,之前一直好好的,突然之间就挂了, 而且这个数据库我使用的是docker
进行维护,同时,在同一个mysql
容器中我放置了好几个网站的数据,其他网站运行却是正常的
而且我通过第三方连接数据库的工具可以正常连接到被挂网站的数据库
通过以上情况可以排除以下原因:
mysql
容器没有问题这种情况下该如何处理呢? 当然是找日志了
第一步:查看主程序日志,没问题
第二步:查看mysql
容器日志,发现问题
Table './wordpress_wai/wp_options' is marked as crashed and should be repaired when using LOCK TABLES
数据库没有问题,但是表有问题
对表进行修复即可:
执行修复指令
检查表的状态
修复前最好先备份数据库
mysqldump -uroot -p密码 数据库名 >xxxxx.sql
如果表损坏比较严重,可能无法备份数据库
如果你不知道如何查看mysql
日志,那么直接运行备份数据库指令,也能帮你检查数据库是否存在问题