mysql ibdata1 ib_logfile的恢复

mysql如果使用的是innodb存储引擎,那么在mysql的DATA_HOME(一般是/var/lib/mysql)下,会有几个很重要的文件,ibdata1(数据文件)存放mysql的数据及索引,ib_logfileN(redo log事务日志文件)。如果误删除了这几个文件中的某个或某几个,下面的方法可以教你恢复。 

    误删除文件后,可以发现mysqld进程仍然在运行,这时千万别停掉mysql!!!要做的有如下几件事:
1 FLUSH TABLES WITH READ LOCK;
2 查看mysql pid
ps -ef |grep mysql|grep -v root|awk '{print $2}'
或者
[root@rac1 mysql]# netstat -tnulp|grep 3306
tcp        0      0 0.0.0.0:3306               0.0.0.0:*                  LISTEN      7091/mysqld
7091就是我要取的mysql pid
3 查看文件句柄
[root@rac1 mysql]# ll /proc/7091/fd|egrep 'ib_|ibdata1'
lrwx------ 1 root root 64 Sep 10 11:25 10 -> /var/lib/mysql/ib_logfile1
lrwx------ 1 root root 64 Sep 10 11:25 11 -> /var/lib/mysql/ib_logfile2
lrwx------ 1 root root 64 Sep 10 11:25 4 -> /var/lib/mysql/ibdata1
lrwx------ 1 root root 64 Sep 10 11:25 9 -> /var/lib/mysql/ib_logfile0
[root@rac1 mysql]#
查询显示的10 11 4 9就是对应的mysql文件。
4 把这些文件copy到mysql的DATA_HOME下并改属性
cp /porc/7091/fd/10 /var/lib/mysql
cp /porc/7091/fd/11 /var/lib/mysql
cp /porc/7091/fd/4 /var/lib/mysql
cp /porc/7091/fd/9 /var/lib/mysql
chown mysql.mysql -R /var/lib/mysql
5 重启mysql

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27181165/viewspace-775841/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/27181165/viewspace-775841/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值