如果表格崩溃,则意味着我的系统出现了问题。
MySQL said:
#1194 - Table 'tablename' is marked as crashed and should be repaired
我的网站目前因此而失败。
我知道如何从phpmyadmin修复表,但它是否可以安全修复?
这个问题的重要因素是什么?
问题。一般来说,为什么表会崩溃?
答案。这可能是原因 -
服务器的磁盘空间已满。 (请检查实时服务器中的磁盘空间)
错误关闭MySQL服务器/使用数据库时不正确地关闭表。
更多服务器负载。
答案 0 :(得分:20)
首先 - 崩溃的表有很多原因。
使用phpmyadmin进行修复与mysqlrepair命令行基本相同。我建议在命令行上修复所有内容:
mysqlrepair -A --auto-repair
mysqlrepair -A -o
或者开始测试:
mysqlrepair -A -c
答案 1 :(得分:12)
如果您没有所需的命令行工具,崩溃的原因很可能是MYSQL本身,请从MYSQL运行以修复表:
REPAIR TABLE db_name.table_name;
答案 2 :(得分:4)
是的,您可以从phpmyadmin修复表,它不会影响您的数据,您也可以使用'myisamchk'命令从shell修复表。
答案 3 :(得分:1)
我在命令行中使用它:
mysqlcheck -u root -p --auto-repair --check --optimize --all-databases
答案 4 :(得分:1)
使用:
mysqlcheck -u root -p --auto-repair --check --all-databases
(Password prompted)
输入root用户的MySQL密码,一切都已完成。
答案 5 :(得分:1)
答案 6 :(得分:0)
如果您拥有对服务器的ssh访问权限,则可以登录然后执行:
df -h
你可以看到这样的东西:
Filesystem Size Used Avail Use% Mounted on
/dev/cciss/xxxx 19G 825M 18G 5% /
/dev/cciss/xxxx 9.4G 4.8G 4.2G 54% /usr
/dev/cciss/xxxx 15G 1.8G 12G 13% /var
/dev/cciss/xxxx 19G 18G 0G 0% /opt
/dev/cciss/xxxx 4.7G 243M 4.3G 6% /tmp
/dev/cciss/xxxx 9.4G 1.5G 7.5G 17% /home
它安装在/opt
上的LAMP,在有一些可用磁盘空间后,你可以运行查询(如上所述):
Repair table db.mytablecrashed
你进入最后一排:
Table OP Msg_type Msg_text
...
db.mytablecrashed repair status OK