Mysql直接备份文件导致无法还原数据怎么办?
程序员文章站
2022-05-03 10:17:12
...
背景
我一直在跑着的网站,突然某一天我发现网站挂了,经过排查是数据库挂掉了。
登陆Mysql出现:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
想重启Mysql则出现:
stop:unknown instance
start:job failed to start
因为发现Mysql挂掉了,所以没法正常途径备份,我就想到了直接复制/var/lib/mysql下的文件进行数据备份。
正题
我在重新安装了Mysql之后,在/var/lib/mysql/dbname/下替换了之前备份的几个.frm后,start了Mysql,发现备份的以前的数据不在了,还是新创建的数据库中的数据。
经过搜索,我得知innodb的还得替换ibdata1,所以我替换后,无法成功start我的Mysql,提示:
start:failed to start
求解,我该怎么恢复我以前的数据呢?
回复内容:
背景
我一直在跑着的网站,突然某一天我发现网站挂了,经过排查是数据库挂掉了。
登陆Mysql出现:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
想重启Mysql则出现:
stop:unknown instance
start:job failed to start
因为发现Mysql挂掉了,所以没法正常途径备份,我就想到了直接复制/var/lib/mysql下的文件进行数据备份。
正题
我在重新安装了Mysql之后,在/var/lib/mysql/dbname/下替换了之前备份的几个.frm后,start了Mysql,发现备份的以前的数据不在了,还是新创建的数据库中的数据。
经过搜索,我得知innodb的还得替换ibdata1,所以我替换后,无法成功start我的Mysql,提示:
start:failed to start
求解,我该怎么恢复我以前的数据呢?
查看具体的mysq错误日志文件,根据里面的错误信息来解决问题