mysql恢复数据后,提示表不存在error:1146: Table does not exist的解决方法

*将备份的data文件替换新的MySql数据库文件

记得之前在删除mysql时将安装目录下的data文件夹备份,没删掉也有

mysql恢复数据后,提示表不存在error:1146: Table does not exist的解决方法_第1张图片
如上图:
只要在Server data files的安装路径中找到data文件夹,将备份的data文件全部复制进去就可以了。
即:> 全部导入!

把.frm文件导进去。注意在data目录下也要加入ib_logfile0,ib_logfile1,ibdata1这几个文件。

如果还是不行就将自己设置的数据文件存放目录下的ibdata1文件也用备份的ibdata1文件替换掉就可以了,如下图配置的位置

亲测,,,,我安装时设置了一个文件夹存放,,在这一步解决了
mysql恢复数据后,提示表不存在error:1146: Table does not exist的解决方法_第2张图片

============================================================================================================

说明:

要不然在mysql里只能找到表名(其实一个.frm文件就是对应的数据库中的一个表。)

而不能对其进行操作。

比如你原来的mysql中有一些数据库了。可以先把原来的data改名字备份在同一目录下。(可能要改名字系统会提示有另一程序在使用这个文件,这个时候可以到控制面板的服务里面,把mysql的服务先关掉,等改完名字,把东西都导进去后再开服务)

然后另建一个data,把在里面建好数据库名把.frm导进去。

停止服务可以通过管理工具里面的服务来停,或者用cmd 打开dos界面输入net stop mysql,启动用net start mysql;

只要用旧的ibdata1覆盖原来的,再把相关的数据库copy过去,然后重新启动数据库, 就ok了,进入以后要是对表不能操作可能是数据表已经损坏了.
(如果不行报1146错 ,建议重启一下机器在看看)

你可能感兴趣的:(数据库)