mysql innodb ibd frp恢复数据库

本文详细介绍了一种特定条件下MySQL数据库的数据恢复步骤,包括新建相同数据库、表结构,导出表结构,调整ibd文件中的表空间ID等具体操作,并提供了实用的命令示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前提条件
新开一个实例 ,只适合独立表空间结构
数据库版本要一样,用的是独立表空间
有问题要重新测试,删除数据,初始化库,已测试N遍才成功的
友情连接:http://blog.youkuaiyun.com/hi__study/article/details/53489672
http://www.linuxidc.com/Linux/2012-02/54122.htm
1、新建一个一样的数据库名称
2、新建一个一样的表结构 (可以随机新建一张表,然后将要还原的表覆盖,想改my.cnf里面的innodb_force_recovery = 6) ,重启数据库,查看表信息 desc xxxx,有信息说明是对的
3、导出表结构
/usr/local/mysql-test-3307/mysql_3307/bin/mysqldump --opt -d bobing2016 -S /tmp/mysql_3307.sock -uroot -ptest > /home/baiys/user.sql ,查看user.sql信息
4、查看新创建表的ibd文件中的表空间ID vim -b xxx.ibd 输入:%!xxd (红色部分)
5、进入数据库,删除刚才新建的表,再通过要恢复的表的结构建一样的表
6、关闭数据库
7、查看要恢复的表的ibd的表空间地址 vim -b xxx.ibd ,查看 :%!xxd ,查看第三行,3和5,把要恢复的表的ibd空间修改成为刚才新的表的空间,覆盖新的表的ibd ,%!xxd -r 再保存退出
8、打开数据库,如果有问题可将innodb_force_recovery = 6开启,测试没问题刚恢复成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值