当前位置: 首页 > news >正文

如何通过ibd文件恢复MySql数据

今天干了一件大事,安装1Panel导致原来服务器上的所有容器都干没了,主要是MySQL。今天就介绍一下恢复数据的过程,只有.ibd文件怎么恢复MySql

MySql版本8.8.4

第一种情况:知道表结构

知道表结构的话恢复数据比较简单

1、创建数据库

2、建表,要求就是跟原来的表结构一样

3、将你的.ibd文件直接拷贝到当前数据库的data目录下

4、重启MySql

重启成功就结束了

第二种情况:不知道表结构

这种情况下就需要借助额外的工具来恢复数据

1、安装 python3 执行下面这个命令安装

 yum install -y python3

2、安装ibd2sql这个工具

#下载压缩包
wget https://github.com/ddcw/ibd2sql/archive/refs/heads/main.zip
#解压
unzip main.zip

3、进入 ibd2sql-main 目录下

4、执行命令

python3 main.py ***********你的ibd文件的具体路径************* --ddl --sql

python3 main.py /opt/1panel/apps/mysql/mysql/data/ry@002dvue/sj_job.ibd --ddl --sql

执行完毕后就会出现对应的sql脚本,最后直接在执行一下这个sql脚本就能把表结构和数据都找回来了,这种方式是通过执行sql脚本重新创建表和插入数据

当然也可以先执行--ddl 找回表结构

python3 main.py /opt/1panel/apps/mysql/mysql/data/ry@002dvue/sj_job.ibd --ddl

然后在新的数据库中执行create语句把表建好,最后再把你的.ibd文件目录拷贝到新的数据库的data目录下,最后重启MySQL,重启成功的话 数据就都找回来了,要是重启失败的话就只能执行--ddl和--sql找回数据了

总结

        总之兄弟们,操作数据库的时候最好还是备份一下,一不小心整个库都没了,太吓人了,还有就是如果有兄弟安装1Panel,先确保服务器上没有其他的docker容器,不然的话安装1Panel时会将服务器上原来的docker容器和镜像全部都给清了,所以在安装1Panel的时候先做好备份,或者说一开始服务器上没有docker的时候安装1Panel

相关文章:

  • 机器视觉工程师红外相机的选择:红外长波工业相机和短波红外工业相机玄机大总结
  • e2studio开发RA4M2(2)---Programmer烧录程序
  • sql-labs less-1-5wp
  • Python入门教程:从零开始学习Python编程
  • Mybatis3 调用存储过程
  • 计算机二级web易错点(2)-选择题
  • 深入理解Linux网络随笔(七):容器网络虚拟化--Veth设备对
  • 【揭秘测绘艺术】从基础到法律,绘制地球的智慧蓝图
  • 计算机视觉算法实战——驾驶员分心检测(主页有源码)
  • idea更新git代码报错No Git Roots
  • 从零开始搭建搜索推荐系统(五十四)多路召回之万剑归宗
  • 树莓科技(成都)集团:如何铸就第五代产业园标杆
  • Redis内存淘汰策略
  • 【C++】每日一练(有效的括号)
  • 【如何使用云服务器与API搭建专属聊天系统:宝塔面板 + Openwebui 完整教程】
  • 【Python办公】Excel通用匹配工具(双表互匹)
  • Android 自定义蓝牙扫描动画:多波浪扩散效果
  • vue启动 localhost无法访问
  • 了解一下HTTP的短连接和长连接
  • 计算机视觉算法实战——手势识别(主页有源码)
  • 政府部门网站建设简讯/seo渠道是什么意思
  • wordpress怎样加快访问/汽车seo是什么意思
  • 公司网站建设模块/网上交易平台
  • 湛江市企业网站seo点击软件/简述网络营销的特点及功能
  • 企业公司网站建设方案/山东进一步优化
  • 代理注册公司靠谱吗?/系统优化的意义