程序员开发实例大全宝库

网站首页 > 编程文章 正文

解决用mysqldump备份时出现的表需要修复错误

zazugpt 2024-09-07 21:40:18 编程文章 26 ℃ 0 评论

今天我在对一个mysql数据库做备份的时候,用mysqldump命令,居提示表有错误,需要修复

mysqldump: Got error: 145: Table './dataname/tablename is marked as crashed and should be repaired when using LOCK TABLES

查资料,说在myql 命令行下用 check tables tablename 命令修复,发现没有效果,错误依就

后来尝试用了myisamchk 工具,解决问题

myisamchk -c -r ../data/tablename


错误产生原因,有网友说是频繁查询和更新dede_archives表造成的索引错误,因为我的页面没有静态生成,而是动态页面,因此比较同意这种说法。
还有说法为是MYSQL数据库因为某种原因而受到了损坏,如:数据库服务器突发性的断电、在提在数据库表提供服务时对表的原文件进行某种操作都有可能导致
MYSQL数据库表被损坏而无法读取数据。总之就是因为某些不可测的问题造成表的损坏。

当你试图修复一个被破坏的表的问题时,有三种修复类型。如果你得到一个错误信息指出一个临时文件不能建立,删除信息所指出的文件并再试一次--这通常是上一次修复操作遗留下来的。
这三种修复方法如下所示:
% myisamchk --recover --quick /path/to/tblName
% myisamchk --recover /path/to/tblName
% myisamchk --safe-recover /path/to/tblName

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表