mysql 数据库表错误 修复 总结
admin
2023-05-27 11:21:31
0

mysql 数据库坏表修复

   萝卜白菜,各有所爱,能干活、能修复表才是王道!!!

修复之前谨记:先备份数据库 (备份完成后再进行以下修复操作)

  可以mysqldump -A  > all.sql   进行全库备份  (mysqldump导出错误的时候可以省略错误的表进行导出其他的数据添加选项   --ignore-table=table_name  )  也可以进入到/usr/local/shell/ 执行  mysql_backup.sh进行备份数据库  以上两种方式都不可以备份 可以进入到/data/mysql/3306目录里面将以下所有文件信息copy一份

 

针对MyIsam表进行修复方法

1.描述: 

在数据库可以进入 mysql程序正常,只有日志中抛有tables错误的时候使用以下修复:

mysql>  REPAIR TABLE 表名

 

3.描述: 

在数据库不能进入、数据库程序不能够正常启动的时候使用

mysqlcheck -Aor       (此命令在数据库外执行,针对所有myisam的数据库表进行修复 -A=所有all、-o, --optimize 进行对索引优化【重新整理索引】-r, --repair 修复 )


shell# mysqlcheck -Aor   执行的时候会抛出错误(凡是innodb表都会抛错误)

在知道是那个表错误的情况下可以使用以下命令进行修复  (后续可以添加-f选项 force  强制修复,慎用此选项操作)

shell# myisamchk   -oar   tables.MYI  

     

针对Innodb表修复方法

 

1.描述:

数据库可以进入 mysql程序正常,只有日志中抛有tables错误的时候使用以下修复:

 1、通过mysqldump将错误的表进行导出(仅导出数据即可),确定导出没有问题! 

 2、进入mysql   truncate table  表名 

 3、通过mysql命令将刚才导出的数据库数据灌入即可搞定

2.描述:

   可参考 http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html

数据库无法正常启动,日志中存在表错误,index错误信息 修复:

1、在my.cnf文件里面添加

[mysqld]

innodb_force_recovery = 1     (1级别最低通常只是作为跳过表错误正常启动mysql服务)

级别越高,修复难度越大、 (1-6) 


1(SRV_FORCE_IGNORE_CORRUPT):忽略检查到的corrupt页。

2(SRV_FORCE_NO_BACKGROUND):阻止主线程的运行,如主线程需要执行full purge操作,会导致crash。

3(SRV_FORCE_NO_TRX_UNDO):不执行事务回滚操作。

4(SRV_FORCE_NO_IBUF_MERGE):不执行插入缓冲的合并操作。

5(SRV_FORCE_NO_UNDO_LOG_SCAN):不查看重做日志,InnoDB存储引擎会将未提交的事务视为已提交。

6(SRV_FORCE_NO_LOG_REDO):不执行前滚的操作。

2、能够正常启动mysql后,上层应用不用启动、防止写入数据出现错误

 进入mysql 进行更改错误表的信息

 mysql>  alter table  table_name  ENGINE=myisam;

 修改完成后使用Myisam的修复方式进行修复

 修复完成之后将表更改为innodb 、my.cnf 文件的innodb_force_recovery = 1 注释掉之后重新启动mysql注意观察日志是否抛错

3、通过数据库备份加binlog日志进行恢复,步骤过多,不予写出

仍然可以参考 http://dev.mysql.com/doc/refman/5.5/en/forcing-innodb-recovery.html

进行恢复

 

 

 

 

 


相关内容

热门资讯

陕西柞水遭遇大暴雨,五千余户群... 8月5日7时至15时,陕西省商洛市柞水县出现大到暴雨、局地大暴雨,杏坪社区地质站最大降雨量135.4...
伊朗与阿曼会谈最新细节曝光 美国有线电视新闻网(CNN)8月5日报道,伊朗和阿曼将敲定一项关于通过霍尔木兹海峡进行商业航运的框架...
大科学装置建设全面提速 创新成... 央视网消息(新闻联播):重大科技基础设施是建设科技强国的利器。今年以来,我国大科学装置建设全面提速,...
贝塔创新科技观察算力公有化趋势... 从公有云到公有算力网络:AI基础设施进入弹性调度时代 过去几年,市场更关注大模型参数、算法能力和应...
活力中国调研行丨激活创新源 合... 新华社合肥8月5日电 题:激活创新源 合肥大健康科研成果加速产业化 新华社记者高亢、张紫赟 近日,“...
凤凰连线:为何伊朗称“即使与阿... 据凤凰卫视报道,伊朗知情人士当地时间周三透露称,伊朗与阿曼就霍尔木兹海峡船舶通行安排,可能达成协议,...
伊朗称与阿曼就霍尔木兹海峡航运... 据凤凰卫视报道,伊朗外交部发言人巴加埃5日表示,伊朗与阿曼已就霍尔木兹海峡拟定航道的地理坐标达成一致...
予非知识图谱大模型完成生成式人... 近日,山东省网信办正式公布生成式人工智能服务备案名录,潍坊华创信息技术有限公司自主研发的“予非知识图...
学习语丨人工智能应该是造福全人... 近日,习近平总书记向2025世界智能产业博览会致贺信,指出:“人工智能应该是造福全人类的国际公共产品...
2026年交易全链路可追溯的智... 2026-08-05 12:10:48 作者:狼叫兽 2026年被视作智能体支付规模化落地的关键之年...