Heim >Backend-Entwicklung >PHP-Tutorial >Mysql直接备份文件导致无法还原数据怎么办?

Mysql直接备份文件导致无法还原数据怎么办?

WBOY
WBOYOriginal
2016-07-06 13:52:13895Durchsuche

背景

我一直在跑着的网站,突然某一天我发现网站挂了,经过排查是数据库挂掉了。
登陆Mysql出现:

<code>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
</code>

想重启Mysql则出现:

<code>stop:unknown instance
start:job failed to start
</code>

因为发现Mysql挂掉了,所以没法正常途径备份,我就想到了直接复制/var/lib/mysql下的文件进行数据备份。

正题

我在重新安装了Mysql之后,在/var/lib/mysql/dbname/下替换了之前备份的几个.frm后,start了Mysql,发现备份的以前的数据不在了,还是新创建的数据库中的数据。
经过搜索,我得知innodb的还得替换ibdata1,所以我替换后,无法成功start我的Mysql,提示:

<code>start:failed to start
</code>

求解,我该怎么恢复我以前的数据呢?

回复内容:

背景

我一直在跑着的网站,突然某一天我发现网站挂了,经过排查是数据库挂掉了。
登陆Mysql出现:

<code>ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)
</code>

想重启Mysql则出现:

<code>stop:unknown instance
start:job failed to start
</code>

因为发现Mysql挂掉了,所以没法正常途径备份,我就想到了直接复制/var/lib/mysql下的文件进行数据备份。

正题

我在重新安装了Mysql之后,在/var/lib/mysql/dbname/下替换了之前备份的几个.frm后,start了Mysql,发现备份的以前的数据不在了,还是新创建的数据库中的数据。
经过搜索,我得知innodb的还得替换ibdata1,所以我替换后,无法成功start我的Mysql,提示:

<code>start:failed to start
</code>

求解,我该怎么恢复我以前的数据呢?

查看具体的mysq错误日志文件,根据里面的错误信息来解决问题

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn