MySQL在运行中,如果误删除数据文件,只有服务进程没有退出,那么就有办法将其恢复。

首先介绍Linux下lsof:他可以显示打开的文件和网络连接。

其次/proc目录包含了反映内核和进程树的各种文件。/proc/504目录包含的是PID是504的进程信息。通过ps命令查看进程的进程ID。两者结合可以将删除的文件恢复。

1、表文件:

[rdb@localhost yzs]$ ll

total 120

-rw-rw---- 1 rdb rdb  8584 Sep  2 19:43 t2.frm

-rw-rw---- 1 rdb rdb 98304 Oct  6 20:45 t2.ibd

2、将t2.ibd文件删除

[rdb@localhost yzs]$ rm -rf t2.ibd

3、通过lsof命令查看打开t2.ibd的进程号,可以看到是38,并且有(deleted)标记,表示已删除

[root@localhost fd]# lsof | grep t2.ibd

mysqld     5004       rdb   38uW     REG        8,2    98304     654903 /home/rdb/data/yzs/t2.ibd (deleted)

4、恢复,38是设备描述符fd

[root@localhost fd]# cp 38 /home/rdb/data/yzs/t2.ibd

5、文件已恢复

mysql> select *from t2;

+----+------+

| id | id2  |

+----+------+

|  1 |    1 |

|  2 |    2 |

|  3 |    3 |

|  4 |    4 |

|  6 |    6 |

|  7 |    7 |

+----+------+

6 rows in set (0.00 sec)

注:

如果不知道进程ID,可以通过下面命令查看被删除的信息,然后找到对应删除的文件,执行第4步:

[root@localhost fd]# lsof -nP |grep '(deleted)'

mysqld     5004       rdb   38uW     REG        8,2    98304     654903 /home/rdb/data/yzs/t2.ibd (deleted)

MySQL文件后_MySQL误删除文件后,如何恢复相关推荐

  1. mysql ibdata1 删除_mysql 误删除ibdata1之后的恢复方法

    mysql 误删除ibdata1之后如何恢复 如果误删除了在线服务器中mysql innodb相关的数据文件ibdata1以及日志文件 ib_logfile*, 应该怎样恢复呢? 这时候应该一身冷汗了 ...

  2. mysql摧毁重建_mysql数据文件破坏后的修复方法

    由于临时或者突然断电,使用kill -9中止MySQL服务进程,所有的这些都可能会毁坏MySQL的数据文件.如果在被干扰时,服务正在改变文件,文件可能会留下错误的或不一致的状态.因为这样的毁坏有时是不 ...

  3. mysql数据库的后_MySQL数据库误删后的回复技巧

    在日常运维工作中,对于数据库的备份是至关重要的!数据库对于网站的重要性使得我们对 MySQL 数据库的管理不容有失!然而是人总难免会犯错误,说不定哪天大脑短路了,误操作把数据库给删除了,怎么办? 下面 ...

  4. mysql ibdata作用_mysql data文件夹下ibdata1 文件作用

    ibdata1这个文件超级大, 查了一下, 大概的作用如下 是储存的格式 INNODB类型数据状态下, ibdata用来储存文件的数据 而库名的文件夹里面的那些表文件只是结构而已 由于mysql4.1 ...

  5. arch mysql日志位置_MySQL 日志文件与相关参数

    1 .参数文件及mysql参数 查看mysql 的 my.cnf 配置文件位置命令:>./bin/mysql --help | grep my.cnf 查看mysql 的参数设置命令: mysq ...

  6. mysql ibdata1 损坏_mysql innodb文件ibdata1损坏导致mysql无法启动

    问题描述 1 mysql数据库5.6无法正常启动 2 直接复制替换innodb的frm和idb文件来新增数据表导致的问题 3 innodb文件ibdata1,ib_logfile0,ib_logfil ...

  7. mysql库文件修复_mysql数据库文件修复

    多数情况下,数据库被破坏只是指索引文件受到了破坏,真正的数据被破坏掉的情况非常少.大多数形式的数据库破坏的的修复相当简单. 和前面的校验一样,修复的方式也有三种. 下面讲的方法只对MyISAM格式的表 ...

  8. mysql.sock 误删_MySQL sock 文件丢失被删除解决方法 雪剑无影

    Mysql有两种连接方式: (1),TCP/IP (2),socket 对mysql.sock来说,其作用是程序与mysqlserver处于同一台机器,发起本地连接时可用. 例如你无须定义连接host ...

  9. mysql 的文件介绍_mysql 数据文件介绍

    MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型..frm文件存储表定义.数据文件的扩展名为.MYD (MYData).索引文件的扩展名是.MYI (MYInde ...

最新文章

  1. php倒放,神奇创意怎么让视频倒着播放 还有减速或加速播放
  2. Spring Boot集成Swagger导入YApi@无界编程
  3. 如何通过AppDomain用特定的安全上下文加载外部程序集
  4. VC批量拷贝,移动,删除文件---SHFileOperation
  5. 驱动06.触摸屏驱动程序
  6. [react] 如果组件的属性没有传值,那么它的默认值是什么?
  7. 和Leo一起做爱字符串的好孩子之 [SDOI2014]数数
  8. leetcode 题库1028--从先序遍历还原二叉树
  9. GDAL C#版本 安全透明方法问题解决方案
  10. Tensorflow2.0:使用Keras自定义网络实战
  11. Jim Marino与Meeraj Kunnumpurath专访:关于SCA和Fabric3
  12. 【JZOJ】立体井字棋
  13. Linux应用层24点小游戏,C++ Builder构建算二十四点小游戏
  14. leetcode-排列组合问题
  15. Unity-CharacterController(角色控制器)
  16. 一个屌丝程序猿的人生(十五)
  17. 疯狂考证的两年:通过CFA、FRM、CMA经验与收获
  18. Layui(四) 表格嵌套下拉列表框
  19. “名媛”不只值一个爱马仕包的钱
  20. 解析雅虎与百度流氓原理-IE劫持

热门文章

  1. java jps都卡死,java长时间运行后,jps失效
  2. crt 8.7.3 黑暗模式_民谣缠绕厄运金属,抒情中的黑暗故事
  3. 谷歌浏览器中文版_中国科学家设计超薄指尖传感器,厚度不到A4纸五分之一 / 谷歌发布地图时光机:百年前,你家街道啥样?/ AI看图说话首超人类...
  4. 华为鸿蒙系统还没发布吗,华为没有孤军奋战,合作伙伴“雪中送炭”,鸿蒙系统正式发布!...
  5. java技术教程视频_Spring开发视频教程高级篇+源码(400M)33讲
  6. vue key重复_【第2112期】 import { reactive } from #39;vue#39;
  7. 的setinterval函数_ES6 极简教程 lt;6gt; 函数扩展
  8. java 建造者实际中的用法_java中j建造者模式详解和使用方法
  9. oracle迁移父子数据
  10. Anuglar中正确导入RxJS库