当前位置: 移动技术网 > IT编程>数据库>Mysql > MySQL数据库InnoDB引擎下服务器断电数据恢复方法

MySQL数据库InnoDB引擎下服务器断电数据恢复方法

2017年12月12日  | 移动技术网IT编程  | 我要评论

说明:

线上的一台mysql数据库服务器突然断电,造成系统故障无法启动,重新安装系统后,找到之前的mysql数据库文件夹。

问题:

通过复制文件的方式对之前的mysql数据库进行恢复,发现在程序调用时找不到数据库中的表,造成网站无法正常访问。

分析:

1、mysql数据库,使用拷贝文件方式来恢复数据库,只支持myisam引擎;
2、如果有数据库或数据表使用了innodb引擎,恢复的时候,必须连同mysql数据库目录下的ibdata1文件一起拷贝过来。

解决办法:

1、停止mysql服务

service mysqld stop

2、找之前的备份数据库文件

cd /home/mysql_bak/mysql/ #进入mysql备份目录

ibdata1 #需要此文件

3、拷贝ibdata1文件到数据库相应目录

cp /home/mysql_bak/mysql/ibdata1 /usr/local/mysql/data/ibdata1 #拷贝文件到现在的数据库目录
chown mysql.mysql /usr/local/mysql/data/ibdata1 #设置权限位mysql用户和用户组
rm /usr/local/mysql/data/ib_logfile0 #删除现有日志文件,否则启动mysql失败
rm /usr/local/mysql/data/ib_logfile1 #删除现有日志文件,否则启动mysql失败


4、启动mysql

service mysqld start

故障解决

此时页面已正常打开。

ibdata1作用:innodb引擎下的表数据文件。

建议:数据库一定要做好备份,恢复数据最好使用.sql备份文件导入。

至此,mysql数据库innodb引擎下服务器断电数据恢复教程完成。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网