MySQL 数据表修复方法小结 |
本文主要讲check table和repair table指令; 1. 指令详解在检查、修复表,除了用myisamchk指令,还可以用check table、repair table指令 。(指令不区分大小写)
名词解释:
说明:一些只对myisam表有作用(对innodb和视图无效)的选项介绍:
修复有错误的表 REPAIR TABLE 用于修复被破坏的表 。 语法如下: REPAIR [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ... [QUICK] [EXTENDED] [USE_FRM] quick:repair只修复索引,等价于“myisamchk --recover --quick tablename” extended:MySQL会一行一行地创建索引行,等价于”myisamchk --safe-recover tablename“ use_frm:如果.MYI索引文件缺失或标题被破坏,则使用此选项,用来自.frm文件重新创建.MYI文件 。这种修复不能使用myisamchk来完成;在repair常规无法完成时,才会使用这个选项,如果表被压缩不能使用 。 no_write_to_binlog:repair默认是写到二进制文件的,如果有主从模式的话,repair也会在从库执行;使用此选项将会禁止写入到二进制文件中 。 2. 操作方法:命令提示符(cmd指令)操作方法输入cmd进入命令提示符 登录MySQL 注意:指令必须遵循上图格式,空格不能少也不能多; 选择数据库 注意:分号(;)不能省略 。 检查表或者修复表 mysql> check table t1 medium; 等价于 # myisamchk --medium-check tablename 快速检查没有被正确关闭的表 mysql> check table 表名 quick fast; 注意:操作到步骤1.4就可以了 。 SQLyog 操作方法(推荐)SQLyog 是图像界面操作更直观,更简单 。操作逻辑和指令是一样的,没有区别;
操作成功如下图: 注意:数据表越大操作越慢 到此这篇关于MySQL 数据表修复方法小结的文章就介绍到这了,更多相关MySQL 数据表修复内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持! |