现象描述

访问 Zabbix Web,出现如下错误提示:

•    Error in query [SELECT * FROM history_uint h WHERE h.itemid='25067' ORDER BY h.clock DESC LIMIT 1 OFFSET 0] [Table './zabbix/history_uint' is marked as crashed and should be repaired]
• Error in query [SELECT * FROM history_uint h WHERE h.itemid='26280' ORDER BY h.clock DESC LIMIT 1 OFFSET 0] [Table './zabbix/history_uint' is marked as crashed and should be repaired]
• Error in query [SELECT * FROM history_uint h WHERE h.itemid='26286' ORDER BY h.clock DESC LIMIT 1 OFFSET 0] [Table './zabbix/history_uint' is marked as crashed and should be repaired]

解决办法

1、首先进入mysql命令台:
      mysql -u root -p
      回车,然后输入密码

2、查询所有的库
      mysql> show databases;

3、进入数据库“zabbix”是库名
      mysql> use zabbix;

4、检查表
      check table history_uint;
      (history_uint :出现错误的表)用来检查出现问题的表的状态,出现错误就正常。

mysql> check table history_uint;
+---------------------+-------+----------+-------------------------------------------------------+
| Table | Op | Msg_type | Msg_text |
+---------------------+-------+----------+-------------------------------------------------------+
| zabbix.history_uint | check | warning | Table is marked as crashed |
| zabbix.history_uint | check | warning | 1 client is using or hasn't closed the table properly |
| zabbix.history_uint | check | error | record delete-link-chain corrupted |
| zabbix.history_uint | check | error | Corrupt |
+---------------------+-------+----------+-------------------------------------------------------+
4 rows in set (2 min 48.75 sec)

5、修复表
      repair table history_uint;

mysql> repair table history_uint;
+---------------------+--------+----------+--------------------------------------------------+
| Table | Op | Msg_type | Msg_text |
+---------------------+--------+----------+--------------------------------------------------+
| zabbix.history_uint | repair | warning | Number of rows changed from 28813609 to 28843608 |
| zabbix.history_uint | repair | status | OK |
+---------------------+--------+----------+--------------------------------------------------+
2 rows in set (9 min 12.42 sec)

6、再次检查表。
      check table history_uint;

mysql> check table history_uint;
+---------------------+-------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+---------------------+-------+----------+----------+
| zabbix.history_uint | check | status | OK |
+---------------------+-------+----------+----------+
1 row in set (13.57 sec)

7、ok 搞定。

预防措施

1、一定要备份一次数据库,起码保留了表结构,有些可有可无的数据,可以直接覆盖。
       2、重要的数据要经常注意备份,一般一个月左右备份一次。
       3、出现此类错误,一般能够解决,经上面的修复方法是比较可行的。但偶尔会有数据丢失的情况,强烈建议先备份。

Windows下使用MyISAM存储引擎碰到此问题的解决方法

首先需要定位到你的mysql的bin目录,里面包含myisamchk.exe文件的目录
./myisamchk -c -r 数据库表MYI文件的路径 (例如:D:/mysql/data/hangban/user.MYI)
如果还不行,就-f 强制修复

D:\mysql\bin> cd .. 返回上级目录
D:\mysql> cd data 进入数据库所在目录(mysql的数据库文件都是放在data这个目录里面的)
D:\mysql\data> cd hangban 进入数据库,windows服务器中数据库就是一个文件夹(这里以hangban为例子)

D:\mysql\data\hangban> myisamchk -r user

- recovering (with sort) MyISAM-table 'user'
Data records: 7216
- Fixing index 1
- Fixing index 2
- Fixing index 3

D:\mysql\data\hangban>

user为数据库的表名,提示哪个表错误,就修复哪个表。

【MySQL Errors】Table 'xxx' is marked as crashed and should be repaired 的解决方案的更多相关文章

  1. 解决mysql Table ‘xxx’ is marked as crashed and should be repaired的问题。

    解决mysql Table 'xxx' is marked as crashed and should be repaired的问题. 某个表在进行数据插入和更新时突然出现Table 'xxx' is ...

  2. Table XXX is marked as crashed and should be repaired问题

    数据表出错了,查询数据获取不到了. 尝试一 重启mysql service mysqld restart 没用,重启并没有把表修复掉 尝试二 check table vicidial_list;rep ...

  3. mysql 1194 – Table ‘tbl_video_info’ is marked as crashed and should be repaired 解决方法

    执行REPAIR TABLE `tbl_vedio_info`; 然后就可以了

  4. [mysql] 修复问题表Table '.xxxx' is marked as crashed and should be repaired

    程序执行的过程中,出现   Table '.xxxx' is marked as crashed and should be repaired 错误,上网查了一下,原来是表遭到损坏所致,具体修复办法如 ...

  5. 解决数据库 Table 'content_tags' is marked as crashed and should be repaired 表损坏问题

    今天突然网站TAG页面打不开了,打开debug,发现提示 Table 'content_tags' is marked as crashed and should be repaired 这样的错误 ...

  6. azkaban-web-start.sh启动时出现Table 'execution_flows' is marked as crashed and should be repaired Query错误的解决办法(图文详解)

    问题详情 [hadoop@master bin]$ ./azkaban-web-start.sh Using Hadoop Using Hive from /home/hadoop/app/hive ...

  7. mysql Table 'user' is marked as crashed and should be repaired

    myisamchk -f x:\xxxxxxxxx\MySQL\data\mysql\*.MYI

  8. Table 'hd_online' is marked as crashed and should be repaired索引损坏

    myisam 引擎表的索引损坏,解决方法 找到mysql的安装目录的/usr/local/mysql/bin/myisamchk工具,在命令行中输入: myisamchk -c -r /data/db ...

  9. Mysql中is marked as crashed and should be repaired问题的处理

    问题描述:浏览页面提示:.bbs[Table]threads' is marked as crashed and should be repaired 产生原因:表在查询或其它系统操作下损坏. 解决方 ...

随机推荐

  1. linux的五种IO模型

    概念: 同步.异步.阻塞.非阻塞的概念 同步:所谓同步,发起一个功能调用的时候,在没有得到结果之前,该调用不返回,也就是必须一件事一件事的做,等前一件做完了,才能做下一件. 提交请求->等待服务 ...

  2. [BUUOJ记录] [CISCN 2019 初赛]Love Math & [NESTCTF 2019]Love Math 2

    主要考察利用已有函数构造危险函数绕过,实现RCE. 进入题目给出源码: <?php error_reporting(0); //听说你很喜欢数学,不知道你是否爱它胜过爱flag if(!isse ...

  3. basicInterpreter1.01 支持分支语句

    源码:https://files.cnblogs.com/files/heyang78/basicInterpreter-20200531-1.rar 输入: count= print(count) ...

  4. Life is not the amount of breath you take.

    It's the moments that take you breath away.

  5. Apache Nginx Tomcat

    Tomcat Tomcat:动态解析容器 处理动态请求,是编译JSP/Servlet的容器 区别: 严格意义上来说 Apache和nginx应该叫做HTTP Server tomcat是一个Appli ...

  6. python中绝对值的表达式

    abs(x) print(abs(23)) #23print(abs(-45)) #45  

  7. xss原理解析

    xss->跨站脚本攻击 xss是指攻击者在网页中嵌入客户端脚本.通常是指javascript编写的一个危险代码,当用户使用浏览器浏览网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的. ...

  8. [LeetCode]152. 乘积最大子序列(DP)

    题目 给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数). 示例 1: 输入: [2,3,-2,4] 输出: 6 解释: 子数组 [2,3] 有最大乘积 6. 示 ...

  9. Linux实战(13):Centos8安装FFmpeg

    此文章所做的操作参考漏网的鱼:参考链接 步骤1:安装RPMfusion Yum存储库 RHEL或兼容发行版(如CentOS)上启用EPEL. dnf -y install https://downlo ...

  10. python文档翻译之使用python解释器

    Python解释器通常安装在/usr/local/bin/python3.6,把/usr/local/bin目录设置到UNIX shell的搜索路径就可以使用下面的命令运行python: python ...