2010-02-19 77 views
5

我有一个复杂列的表,我开始填充一个沉重的数据,在这期间,它崩溃了。如何在不使用phpMyAdmin的情况下修复MySQL表?

表报告为崩溃并需要修复。

phpmyadmin中的修复表无法修复它。

然后我决定再次开始填充过程,但我甚至无法检索表结构。

如何获取数据?或者只是结构?

(我跑下一个AMD四XAMPP/mysql的窗户)

回答

10

PHPMyadmin在执行长查询时会遇到问题。如果无法通过特定的错误信息执行修复表,请将其发布。如果它刚刚挂起,则可以使用命令行版本的mysql尝试修复,它位于mysql安装的bin目录中。

mysql -u username -p 
mysql> use dbname; 
mysql> repair table tablename; 

根据表的大小,这可能需要一段时间。

如果这不起作用,那么下一步就是使用myisamchk,如果您的表使用MyISAM引擎。

+0

它刚刚工作。谢谢。 – Alexar 2010-02-19 14:22:23

7

如果你的表是在MyISAM中,myisamchk是检查的第一个工具。它位于mySQL安装的/bin目录中。以下是其repair options的列表。

在运行myisamchk之前制作数据目录的备份副本是明智的,以防万一。

+0

感谢您的回答。我从中学到了东西。 – Alexar 2010-02-19 14:15:26

相关问题