查看: 6004|回复: 0
打印 上一主题 下一主题

带你轻松接触MySQL中损坏的MyISAM表

[复制链接]
跳转到指定楼层
1#
发表于 2008-8-12 09:47:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
通常情况下,即使MyISAM表格式非常可靠(SQL语句对表做的所有改变在语句返回之前被写下),如果下列任何事件发生,你依然可以获得损坏的表:



· mysqld进程在写中间被杀掉。



· 发生未预期的计算机关闭(例如,计算机被关闭)。



· 硬件故障。



· 你可以同时在正被服务器修改的表上使用外部程序(如myisamchk)。



· MySQL或MyISAM代码的软件缺陷。



一个损坏的表的典型症状如下:



· 当在从表中选择数据之时,你得到如下错误:



· Incorrect key file for table: '...'. Try to repair it


· 查询不能在表中找到行或返回不完全的数据。



你可以用CHECK TABLE statement语句来检查MyISAM表的健康,并用REPAIR TABLE修复一个损坏的MyISAM表。当mysqld不运行之时,你也可以用myisamchk命令检查或修理一个表。


如果你的表变得频繁损坏,你应该试着确定为什么会这样的原因。要明白的最重要的事是表变得损坏是不是因为服务器崩溃的结果。你可以在错误日志中查找最近的restarted mysqld消息来早期验证这个。如果存在这样一个消息,则表损坏是服务器死掉的一个结果是很有可能的。否则,损坏可能在正常操作中发生。这是一个缺陷。你应该试着创建一个展示这个问题的可重复生成的测试案例。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州朗动科技(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:政企网站,系统平台,微信公众号,各类小程序,手机APP客户端,浙里办微应用,浙政钉微应用、主机域名、虚拟空间、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2026 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

快速回复 返回顶部 返回列表