AMPPS更新/重新安装后,某些MySQL表无法访问

时间:2015-03-13 15:39:42

标签: mysql ampps

重新安装AMPPS后(升级失败,所以我安装了旧版本,新安装后修复了一些配置文件),一些MySQL数据库表似乎已丢失。在phpMyAdmin中,我只能看到其中一些。我检查了数据库文件夹,发现我可以看到所有表格的文件 - 只有部分表格不显示。

实施例: 在phpMyAdmin中显示的表的文件:

  • dbtable_ok.frm
  • dbtable_ok.MYD
  • dbtable_ok.MYI

phpMyAdmin中未显示的表的文件:

  • dbtable_not_ok.frm
  • dbtable_not_ok.ibd

网站(尤其是Joomla)也无法访问这些后面的文件。

这是关于来自phpMyAdmin的数据库和服务器的信息:

数据库服务器

Server: localhost via TCP/IP
Server type: MySQL
Server version: 5.6.23 - MySQL Community Server (GPL)
Protocol version: 10
User: root@localhost
Server charset: UTF-8 Unicode (utf8)

网络服务器

Apache/2.4.12 (Win32) OpenSSL/1.0.1l PHP/5.3.29 mod_wsgi/3.5 Python/2.7.9
Database client version: libmysql - mysqlnd 5.0.8-dev - 20102224 - $Id: 731e5b87ba42146a687c29995d2dfd8b4e40b325
PHP extension: mysqli Documentation

我希望配置文件中有一些简单的设置来解决这个问题...... 谢谢!

1 个答案:

答案 0 :(得分:1)

MySQL错误日志中的任何提示或警告?

这对你来说可能是坏消息。重新安装可能会覆盖现有数据库。特别是,InnoDB表(在MySQL默认情况下)存储在ibdata1(等等)文件中;此文件在MySQL安装之间不可移植。可能发生的事情是,新的AMPPS安装安装了一组新的数据库,这些数据库消灭了您现有的数据库 - 或者只是MySQL用来跟踪它的元数据或整个数据库。

现在看起来你有一个单独的.ibd文件,这意味着所有的希望都不会丢失。说明相当复杂,恕我直言,不适合在这里复制和粘贴,但请参阅MySQL手册https://dev.mysql.com/doc/mysql-enterprise-backup/3.7/en/partial.restoring.single.html和我刚刚找到的这个随机网站http://www.chriscalender.com/recovering-an-innodb-table-from-only-an-ibd-file/,也许其中一个会有所帮助。这是来自MySQL启动的错误消息可能有助于确切地确定出错的地方。根据备份的年龄,从备份恢复可能更安全。