展开全部

解决方案如下:

1. 进入管理mysql的phpmyadmin

2. 在左则选中自己的数据库

3. 在右则勾选中错误信32313133353236313431303231363533e59b9ee7ad9431333236393732息中的那个’wxpetdata’表

4. 滚动屏幕到下面,有个下拉菜单(With selected:),选择”Repair table”

---------------------------------------------------------------------

或者可以这样

wxpetdata被标记有问题,需要修复。于是赶快恢复历史数据,上网查找原因。最终将问题解决。解决方法如下:

找到mysql的安装目录的bin/myisamchk工具,在命令行中输入:

myisamchk -c -r ../data/dedecmsv4/dede_archives.MYI

然后myisamchk 工具会帮助你恢复数据表的索引。重新启动mysql,问题解决。

问题分析:

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

问题的编号为145

2、问题解决办法。

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

这三种修复方法如下所示:

% myisamchk --recover --quick /path/to/tblName

% myisamchk --recover /path/to/tblName

% myisamchk --safe-recover /path/to/tblName

第一种是最快的,用来修复最普通的问题;而最后一种是最慢的,用来修复一些其它方法所不能修复的问题。

检查和修复MySQL数据文件

如果上面的方法无法修复一个被损坏的表,在你放弃之前,你还可以试试下面这两个技巧:

如果你怀疑表的索引文件(*.MYI)发生了不可修复的错误,甚至是丢失了这个文件,你可以使用数据文件(*.MYD)和数据格式文件(*.frm)重新生成它。首先制作一个数据文件(tblName.MYD)的拷贝。重启你的MySQL服务并连接到这个服务上,使用下面的命令删除表的内容:

mysql> DELETE FROM tblName;

在删除表的内容的同时,会建立一个新的索引文件。退出登录并重新关闭服务,然后用你刚才保存的数据文件(tblName.MYD)覆盖新的(空)数据文件。最后,使用myisamchk执行标准的修复(上面的第二种方法),根据表的数据的内容和表的格式文件重新生成索引数据。

如果你的表的格式文件(tblName.frm)丢失了或者是发生了不可修复的错误,但是你清楚如何使用相应的CREATE TABLE语句来重新生成这张表,你可以重新生成一个新的.frm文件并和你的数据文件和索引文件(如果索引文件有问题,使用上面的方法重建一个新的)一起使用。首先制作一个数据和索引文件的拷贝,然后删除原来的文件(删除数据目录下有关这个表的所有记录)。

启动MySQL服务并使用当初的CREATE TABLE文件建立一个新的表。新的.frm文件应该可以正常工作了,但是最好你还是执行一下标准的修复(上面的第二种方法)。

3、myisamchk工具介绍(见mysql的官方手册)

可以使用myisamchk实用程序来获得有关数据库表的信息或检查、修复、优化他们。myisamchk适用MyISAM表(对应.MYI和.MYD文件的表)。

调用myisamchk的方法:

shell> myisamchk [options] tbl_name ...

options指定你想让myisamchk做什么。在后面描述它们。还可以通过调用myisamchk --help得到选项列表。

tbl_name是你想要检查或修复的数据库表。如果你不在数据库目录的某处运行myisamchk,你必须指定数据库目录的路径,因为myisamchk不知道你的数据库位于哪儿。实际上,myisamchk不在乎你正在操作的文件是否位于一个数据库目录;你可以将对应于数据库表的文件拷贝到别处并且在那里执行恢复操作。

如果你愿意,可以用myisamchk命令行命名几个表。还可以通过命名索引文件(用“ .MYI”后缀)来指定一个表。它允许你通过使用模式“*.MYI”指定在一个目录所有的表。例如,如果你在数据库目录,可以这样在目录下检查所有的MyISAM表:

shell> myisamchk *.MYI

如果你不在数据库目录下,可通过指定到目录的路径检查所有在那里的表:

shell> myisamchk /path/to/database_dir/*.MYI

你甚至可以通过为MySQL数据目录的路径指定一个通配符来检查所有的数据库中的所有表:

shell> myisamchk /path/to/datadir/*/*.MYI

推荐的快速检查所有MyISAM表的方式是:

shell> myisamchk --silent --fast /path/to/datadir/*/*.MYI

如果你想要检查所有MyISAM表并修复任何破坏的表,可以使用下面的命令:

shell> myisamchk --silent --force --fast --update-state \

-O key_buffer=64M -O sort_buffer=64M \

-O read_buffer=1M -O write_buffer=1M \

/path/to/datadir/*/*.MYI

该命令假定你有大于64MB的自由内存。关于用myisamchk分配内存的详细信息,参见5.9.5.5节,“myisamchk内存使用”。

当你运行myisamchk时,必须确保其它程序不使用表。否则,当你运行myisamchk时,会显示下面的错误消息:

warning: clients are using or haven't closed the table properly

这说明你正尝试检查正被另一个还没有关闭文件或已经终止而没有正确地关闭文件的程序(例如mysqld服务器)更新的表。

如果mysqld正在运行,你必须通过FLUSH TABLES强制清空仍然在内存中的任何表修改。当你运行myisamchk时,必须确保其它程序不使用表。避免该问题的最容易的方法是使用CHECK TABLE而不用myisamchk来检查表。

已赞过

已踩过<

你对这个回答的评价是?

评论

收起

mysql query error_论坛出现 MySQL Query Error相关推荐

  1. MySQL中的通用查询日志(General Query Log)

    MySQL中的通用查询日志(General Query Log) 1. 以什么形式来记录? log_output系统变量来决定的,可选值 TABLE, FILE, 或者 NONE,默认值是FILE,可 ...

  2. 6、MySQL慢查询日志(Slow Query Log)

    慢查询日志用来记录在 MySQL 中执行时间超过指定时间的查询语句.通过慢查询日志,可以查找出哪些查询语句的执行效率低,以便进行优化. 通俗的说,MySQL 慢查询日志是排查问题的 SQL 语句,以及 ...

  3. mysql查询字段变慢,MySQL Query IN()子句在索引列上变慢

    我有一个由PHP脚本生成的MySQL查询,该查询将如下所示: SELECT * FROM Recipe_Data WHERE 404_Without_200 = 0 AND Failures_With ...

  4. mysql hql查询语句_使用Query进行HQL语句查询和SQL语句查询

    HQL的语法比较简单,与普通SQL的区别之处是针对对象的不同,在查询语句中将sql中的表名替换成了sql中的持久化类名,因为hibernate机制是基于对象进行查询的. 不带参数的查询,语句是&quo ...

  5. linux mysql 1045 错误_Linux 下,mysql数据库报无法登陆错误:ERROR 1045 (28000): Access denied for use...

    login as: root Access denied root@×××××××'s password: Last login: Tue Feb 21 03:56:49 2012 from 218. ...

  6. mysql全局权限账户%登录不上ERROR 1045 (28000): Access denied for user #39;mhz#39;@#39;localhost#39; (using ...

    mysql全局权限账户%登录不上 ERROR 1045 (28000): Access denied for user 'mhz'@'localhost' (using password: YES)  ...

  7. mysql报错error2002_mysql中异常出错ERROR:2002的处理办法分享

    软件安装:装机软件必备包 SQL是Structured Query Language(结构化查询语言)的缩写.SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言.在使用它时,只需要发出& ...

  8. Mysql主从同步报错解决:Error executing row event: Table zabbix.history-uint doesnt exist

    报错信息:  因为之前在主数据库服务器上搭建了Zabbix,所以在配置主从时报错.  Error executing row event: 'Table 'zabbix.history_uint' d ...

  9. java毕业设计——基于JSP+mysql的BBS论坛系统设计与实现(毕业论文+程序源码)——论坛系统

    基于JSP+mysql的BBS论坛系统设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于JSP+mysql的BBS论坛系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需要下载开 ...

最新文章

  1. mybatis-错误记录java.lang.ExceptionInInitializerError
  2. 初学者必备的数组相关知识点
  3. pandas使用query函数删除dataframe中两个数据列加和小于某一特定值的数据行(removing rows based on multiple dataframe column value
  4. 简述mysql半同步复制—semisync
  5. centos中ifcfg-eth0配置ip后,重启network服务提示地址已被使用
  6. SSDT Hook的妙用-对抗ring0 inline hook
  7. Groovy里的setProperty和getProperty重载用法
  8. Linux kernel之SMP初始化
  9. 按采用的传输介质计算机网络可分为4种,2015年4月全国自考计算机应用基础试卷及答案(00018)(4页)-原创力文档...
  10. python2.7环境变量的配置_Windows7下python2.7.6环境变量配置
  11. 对博客园的建议与意见
  12. BERT-从业者的观点
  13. 安卓系统和安卓服务器地址,给安卓应用配置服务器地址
  14. C语言 素数三种思路求解,C语言求素数
  15. 海洋cms v6.53 v6.54版本漏洞复现
  16. Selenium自动化中无头浏览器的应用
  17. AlphaGo浅析——浅析卷积神经网络
  18. 文献整理和论文阅读方法
  19. 40位40岁以下投资人
  20. 飞秋2013正式版有偿修改在线等

热门文章

  1. 黑帽SEO是什么?黑帽SEO能做吗
  2. 网上邻居看不到任何电脑的解法
  3. 动态规划多边形游戏c语言,动态规划-多边形游戏问题
  4. QP的学习--第一篇
  5. 报错java.lang.ClassNotFoundException: net.sf.ezmorph.Morpher解决方案
  6. XSS(跨站脚本)漏洞详解之XSS跨站脚本攻击漏洞的解决
  7. 谈论 ModSecurity 和新的 Coraza WAF
  8. WebDriver框架之自动运行失败的case
  9. 最佳单品vs一体化集成,招聘管理系统选型知多少?
  10. 【指标】GMV和销售额、SPU、SKU、商品、单品