mysql创建表时提示Tablespace is missing for table

在mysql安装目录里删除了表.ibd和.frm文件,重启了mysql再新建表时提示Tablespace is missing for table,询问如何才能新建成功呢~

阅读 14.1k
1 个回答

自己搞定了,来源

https://blog.csdn.net/u012488...

5.6 及以上版本处理方式

(1) 关掉mysql服务,删掉老的 blog.content,idb 文件,找到 my.ini 文件,修改 innodb_file_per_table=0 。重启服务。

(2) 新建一个测试test数据库,并新建一个 test.content 表,这时候data库的data目录只出现了.frm 文件,把这个文件拷贝到blog数据库的目录下。

(3) 这个时候回到blog 库,删掉并新建 content表,不再报错。

(4)网上有人说5.6 以上只能放弃这个表名,但是其实我们可以用这个方式解决问题,最后不要忘了把 my.ini 文件,修改 innodb_file_per_table=1 ,使用独立表空间的默认设置。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏