我一直通过Workbench和phpMyAdmin在Windows/XAMPP中使用MySQL。创建了10个数据库,我仍然在两个程序中看到它们。我能够使用他们所有的很多周,但今天,其中一半都在给出“错误代码1146-表不存在”。
在Workbench中,当我执行“show databases;”和“show TABLES IN xxxdb;”,它们会给出预期的结果。但当我执行“select*FROM xxxx;”时,它给出了1146个错误。
在phpMyAdmin中,我也看到了DB的和表,但是当我单击表时,我得到了同样的错误。
我注意到那些可以的文件有.frm和.ibd文件。问题是缺少.ibd文件。
这里可能会发生什么,又是如何发生的?
提前道谢。
我担心你的数据库可能已经损坏了。
是否尝试运行mysqlcheck-u mysql_username-p database_name
?
(我相信它在windows上的默认位置是C:\programfiles\apachefriends.org\xampp\mysql\bin\mysqlcheck.exe
)
如果这仍然给你同样的错误,我很担心除了恢复备份之外,没有什么其他的事情要做。
数据库可能会损坏,原因有很多,例如。当系统关闭、崩溃或在写入某些内容时断电时。
祝你好运!