机器环境
宝塔linux面板5.3.0
linux7.3
nginx1.12
mysql5.5
php5.6+7.2
就在刚刚,习惯性的打开宝塔查看机器运行状态。
然后发现mysql状态中查询缓存命中率有些低,就手动调整了下查询缓存,调高了些。
然后。。。数据库炸了,无法启动
这时候第一反应是马上备份数据库,这时候通过宝塔面板已经无法备份数据库了,数据备份出来全是20B的数据。
随即直接将/www/server/data目录整个压缩备份,防止整个服务器出问题直接下载到了本地。
(备份data目录主要是因为宝塔面板的datadir目录定义到了/www/server/data目录,如下图)
然后尝试多种方式修复无果。
这时候因为已经将数据库数据备份好,直接把数据库卸载重装,之前用的mysql5.5版本,这次还装5.5防止其他意外情况发生。
mysql5.5安装好后将数据导入原来目录。然后重启mysql数据库。
有个问题就是,在宝塔面板上看不到数据库列表了。这个后面再测试。
此种方法理论上也适用于不同平台Windows/linux之间的数据迁移。不同数据库版本之间目前还没试过,不同版本应该会出问题。
但是不管何种情况,第一时间应该想到的是备份数据,至于备份哪些可以去网络上查查。
其他面板环境同理。
2017/12/22更新:
前面说宝塔数据库列表不显示数据库。
然后今天添加一个新网站发现不能添加数据库。
研究了下发现问题在于前后数据库的root密码不一样。
然后我所做的操作是,点击宝塔面板的“root密码”选项,如下图
点进去之后我们点一次“提交”即可。
然后在宝塔数据库列表点击下方的“从服务器获取”,同步一次数据库信息,列表就出来了。
然后我重新安装了phpmyadmin程序,应该不用重装直接重启此程序就可以。
然后还有个问题,在宝塔数据库列表里,数据库密码显示是空的,当然实际上不是空,只是这里不显示。不影响数据库使用。具体的解决方法后面再研究。
点击复制数据库密码,提示数据库密码为空。