首页 > 代码库 > MySQL Errno : 1062 错误修复
MySQL Errno : 1062 错误修复
网站突然出现如下错误:
MySQL Error : Duplicate entry ‘1‘ for key ‘views‘
MySQL Errno : 1062
Message : Duplicate entry ‘1‘ for key ‘views‘
我用
myisamchk cdb_posts.myi -r
修复了表,不过表views的内容被清空了,还好我这边是文章访问量表,不是非常重要,之前也做了备份!
推荐用下面的两个修复表:
REPAIR TABLE `table_name` 修复表
OPTIMIZE TABLE `table_name` 优化表
在大多数情况下,你也可使用命令OPTIMIZE TABLES优化并修复表,如果不是非常情况还是少用myisamchk吧,虽然myisamchk快或可靠(在真正的致命错误的情况下)。
主要是OPTIMIZE TABLE较易使用并且你不必须关心清空表。
如果你删除了一个表的大部分或如果你用变长的行对一个表(有VARCHAR、BLOB或TEXT列的表)做了改变,应该使用OPTIMZE TABLE。删除的记录以一个链接表维持并且随后的INSERT操作再次使用老记录的位置。你可以使用OPTIMIZE TABLE回收闲置的空间。
OPTIMIZE TABLE通过制作原来的表的一个临时副本来工作。老的表被拷贝到新表中(没有闲置的行),然后原来的表被删除并且重命名一个新的。这样做使得所有更新自动转向新的表,没有任何失败的更新。当OPTIMIZE TABLE正在执行时,原来的表可被另外的客户读取。对表的更新和写入延迟到新表准备好为止。
MySQL Errno : 1062 错误修复