问题背景:
因数据库中存在一份公司应用桌面管理表,只在测试数据库中存在,在生产环境不存在,而测试环境的数据库.每次新版本迭代,都会同步一下正式库,有天运维在同步时,对之前的数据库复制备份直接进行了覆盖,导致对应的数据表数据的不匹配
解决方法:
1.打开本第数据库,用相关工具连接数据库(自己熟悉,顺手就行,极力推荐Navicat Premium,下载路径:点我)
2.新建数据库xwan_test(最好和需要找回的数据库名称一样)
3.关闭数据库,找到本地/服务器上mysql安装目录,进入data文件夹(数据库文件存放目录)
4.进入mysql安装目录,进入data文件夹下面,找到刚才新建的数据库xwan_test,如下图所示:
5.找到之前备份对应数据表的.frm和.idb文件(每个数据表都会对应一份.frm和.idb文件),复制到刚才新建数据库的目录下.如:data/xwan_test/
6.因为InnoDB类型的数据表先关的数据信息,都存储于ibdata1文件中,所以也要将该文件一起复制,粘贴目录:data/文件对应的目录如下图:
7:开启数据库,用工具重新连接,发现table下面对应的数据表出现了,打开可以查看相关结构和数据,大功告成(每个人的环境不一样,可能对应的不一样).有问题的欢迎反馈!