mysql表ERROR 144 (HY000)Table 'dede_archives' is marked
1、故障现象
mysql> select count(*) from dede_archives;
ERROR 144 (HY000): Table '.xx' is marked as crashed and last (automatic?) repair failed
2、故障原因
Mysqld进程在数据写入时被意外关闭
意外关闭计算机
硬件故障
3、mysql官方解决方案
官方文档:https://dev.mysql.com/doc/refman/5.6/en/myisam-table-maintenance.html
3.1 check table 检查表的完整性
mysql> check table xx FAST QUICK; /*快速检查表*/
或者
mysql> check table xx EXTENDED; /*全表检查,耗时长*/
正常输出:
+-----------------------+-------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+-----------------------+-------+----------+----------+
| xx                    | check |
status   | OK       |
+-----------------------+-------+----------+----------+
1 row in set (0.16 sec)
3.2 REPAIR TABLE 修复表 适用于MyISAM
mysql> REPAIR TABLE xx;
正常输出:
+-------------------------+--------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+-------------------------+--------+----------+----------+
| xxxx                    | repair | status   | OK      
|
+-------------------------+--------+----------+----------+
1 row in set (0.24 sec)
3.3 myisamchk 快速修复表(恢复模式,并重建索引文件)
C:\>myisamchk -r xx
输出:
- recovering (with sort) MyISAM-table
'xx'
Data records: 11543
- Fixing index 1
- Fixing index 2
- Fixing index 3
- Fixing index 4
备注:3.2和3.3任选一个进行修复
在进行检查和修复表之前,需要对表和数据库进行备份
MyISAM表维护也可以使用SQL语句完成,该语句执行与myisamchk可以执行的操作类似的 操作:
要检查
MyISAM表,请使用CHECK TABLE。要修复
MyISAM表,请使用REPAIR TABLE。要优化
MyISAM表,请使用OPTIMIZE TABLE。要分析
MyISAM表,请使用ANALYZE TABLE。
3.4 迁移数据库(如果由于底层存储损坏导致的表故障)
使用mysqldump进行备份恢复
扩展
mysql错误代码查询
shell> perror 126 127 132 134 135 136 141 144 145
MySQL error code 126 = Index file is crashed
MySQL error code 127 = Record-file is crashed
MySQL error code 132 = Old database file
MySQL error code 134 = Record was already deleted (or record file crashed)
MySQL error code 135 = No more room in record file
MySQL error code 136 = No more room in index file
MySQL error code 141 = Duplicate unique key or constraint on write or update
MySQL error code 144 = Table is crashed and last repair failed
MySQL error code 145 = Table was marked as crashed and should be repaired
mysql表ERROR 144 (HY000)Table 'dede_archives' is marked的更多相关文章
- MySQL数据库插入数据出现 ERROR 1526 (HY000): Table has no partition for value xxx
		
MySQL数据库插入数据出现ERROR 1526 (HY000): Table has no partition for value xxx工作的时候发现无法插入数据,报错:ERROR 1526 (H ...
 - ERROR 1526 (HY000): Table has no partition for value xxx
		
最近,我们有些功能需要使用到基于多个字段的分区,需要同时支持oracle/mysql,但是开发人员又希望尽可能少的改动业务代码,也不愿意使用多列分区,在oracle 11g之前,不支持多列分区(12. ...
 - MySQL错误ERROR 2002 (HY000): Can't connect to local MySQL server
		
From: http://www.jb51.net/article/56952.htm 这篇文章主要介绍了MySQL错误ERROR 2002 (HY000): Can't connect to loc ...
 - linux安装MySQL后输入mysql显示 ERROR 2002 (HY000): Can't connect to local MySQL server through socket
		
我是小白,大佬勿喷 *** linux安装MySQL后输入mysql显示 ERROR 2002 (HY000): Can't connect to local MySQL server through ...
 - MySQL显示ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)解决方法
		
MySQL显示ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)解决方法 2.4K 解决方法: 第一步cd ...
 - MySQL复制ERROR 1794 (HY000): Slave is not configured or failed to initialize properly.
		
ERROR 1794 (HY000): Slave is not configured or failed to initialize properly. You must at least set ...
 - MySQL错误ERROR 1786 (HY000)解决
		
务上需要支持create table XXX as select * from XXX; 这种创建表的语法,但是MySQL5.7.x版本里面gtid是开启的,会报错 ERROR 1786 (HY000 ...
 - mysql出现ERROR 1366 (HY000):的解决办法
		
今天向新建的表中添加内容,出现以下错误: mysql> INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_sho ...
 - MySQL:Error : Tablespace for table '`database`.`temp`' exists. Please DISCARD the tablespace before IMPORT.解决办法
		
今天在navicat上操作mysql数据库表,突然没有响应了.随后重启,mysql服务也终止了.随后启动服务,检查表,发现一张表卡没了,就重新添加一张表.报了一个错: Error : Tablespa ...
 
随机推荐
- markdown 实现代码折叠效果
			
展开:我是一个挑山工,仙人跳 #include int main() { printf("挑山工,快乐加倍"); } 展开:我是一个挑山工,仙人跳 #include int mai ...
 - (2) arm 指令条件码
			
条件码助记符 标志 含义 EQ Z=1 相等 NE Z=0 不相等 CS/HS C=1 无符号数大于或等于 CC/LO C=0 无符号数小于 MI N=1 负数 PL N=0 正数或0 VS V=1 ...
 - JSON和JSONP的区别及使用方法
			
JSON(JavaScript Object Notation)和JSONP(JSON with Padding)虽然只有一个字母的差别,但其实他们根本不是一回事儿:JSON是一种数据交换格式,而JS ...
 - 记一次 .NET 医院CIS系统 内存溢出分析
			
一:背景 1. 讲故事 前几天有位朋友加wx求助说他的程序最近总是出现内存溢出,很崩溃,如下图: 和这位朋友聊下来,发现他也是搞医疗的,哈哈,.NET 在医疗方面还是很有市场的,不过对于内存方面出的问 ...
 - 获取某日期后一周、一月、一年的日期 php
			
//获取某日期后三周同一天日期public static function getNextDate($date){ $return = [ date( 'Y-m-d', strtotime(" ...
 - 老J的技术分享之总结
			
老J做IT这块有二十多个年头了,算是中国IT的见证者与参与者.那个时候刚开始接触和了解时,对于他的一些建议,我不是很乐于去接受,因为我觉得他的那一套技术体系不是很适合如今的情况,当时间久了后发现,他对 ...
 - 用户对象/GDI对象/内核对象
			
对象的分类 Windows的对象可以分为三种,分别是用户对象,GDI对象和内核对象.系统使用用户对象支持窗口管理,使用GDI对象支持图形,并使用内核对象支持内存管理,进程执行和进程间通信(IPC) . ...
 - 迷失在Mysql的锁世界~
			
1.饮料 这是一杯饮料. 这是3杯饮料,每杯饮料的味道各不相同. 但是人类并不称呼[饮料]为[饮料],而是称呼[饮料]为[记录]. 2.红章鱼 这个红色的,长的像章鱼的家伙,我们就叫它红章鱼~ 红章鱼 ...
 - getInstance()得理解
			
使用getInstance()方法的原因及作用 https://www.cnblogs.com/roadone/p/7977544.html 使用getInstance()方法的原因及作用 https ...
 - MSSQL·查询T-SQL语句执行时间的三种方法
			
阅文时长 | 0.23分钟 字数统计 | 420.8字符 主要内容 | 1.引言&背景 2.自定义时间变量求差法 3.MSSQL内置方法 4.MSSQL选项开启时间统计 5.声明与参考资料 『 ...