您的位置:首页 > 数据库 > MySQL

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

2015-08-04 15:43 513 查看
说明:线上的一台MySQL数据库服务器突然断电,造成系统故障无法启动,重新安装系统后,找到之前的MySQL数据库文件夹。问题:通过复制文件的方式对之前的MySQL数据库进行恢复,发现在程序调用时找不到数据库中的表,造成网站无法正常访问。分析:1、MySQL数据库,使用拷贝文件方式来恢复数据库,只支持MyISAM引擎;2、如果有数据库或数据表使用了InnoDB引擎,恢复的时候,必须连同MySQL数据库目录下的ibdata1文件一起拷贝过来。解决办法:1、停止MySQL服务service mysqld stop2、找之前的备份数据库文件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、启动MySQLservice mysqld start故障解决此时页面已正常打开。ibdata1作用:InnoDB引擎下的表数据文件。建议:数据库一定要做好备份,恢复数据最好使用.sql备份文件导入。至此,MySQL数据库InnoDB引擎下服务器断电数据恢复教程完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息