首页 > 数据库 > MySQL > 正文

mysql中优化和修复数据库工具mysqlcheck详细介绍

2024-07-24 12:47:24
字体:
来源:转载
供稿:网友

一、mysqlcheck简介

mysqlcheck客户端可以检查和修复MyISAM表。它还可以优化和分析表。

mysqlcheck的功能类似myisamchk,但其工作不同。主要差别是当mysqld服务器在运行时必须使用mysqlcheck,而myisamchk应用于服务器没有运行时。使用mysqlcheck的好处是不需要停止服务器来检查或修复表。使用myisamchk修复失败是不可逆的。

Mysqlcheck为用户提供了一种方便的使用SQL语句CHECK TABLE、REPAIR TABLE、ANALYZE TABLE和OPTIMIZE TABLE的方式。它确定在要执行的操作中使用使用哪个语句,然后将语句发送到要执行的服务器上。

同其它客户端比较,mysqlcheck有一个特殊特性。重新命名二进制可以更改检查表的默认行为(--check)。如果你想要一个工具默认可以修复表的工具,只需要将mysqlcheck重新复制为mysqlrepair,或者使用一个符号链接mysqlrepair链接mysqlcheck。如果调用mysqlrepair,可按照命令修复表。

下面的名可用来更改mysqlcheck的默认行为:
mysqlrepair 
默认选项为--repair

mysqlanalyze 
默认选项为--analyze

mysqloptimize 
默认选项为--optimize

二、mysqlcheck的使用

1.有3种方式来调用mysqlcheck:

复制代码 代码如下:

shell> mysqlcheck[options] db_name [tables]
shell> mysqlcheck[options] ---database DB1 [DB2 DB3...]
shell> mysqlcheck[options] --all--database

如果没有指定任何表或使用---database或--all--database选项,则检查整个数据库。

2.修复所有的数据库

复制代码 代码如下:
mysqlcheck -a -c -o -r -m --all-databases -uroot -p 

使用上面的命令即可最佳化所有数据库

参数含意:

复制代码 代码如下:
-a = Analyse given tables.
-c = Check table for errors
-o = Optimise table
-r = Can fix almost anything except unique keys that aren't unique
-m = --medium-check

注:MYSQL版本为5.5时,命令中请删除-o

3.修复指定的数据库

复制代码 代码如下:
mysqlcheck -o -r -uroot -p888888 dataname
mysqlcheck -hlocalhost -auto-repair -uroot -p****** dataname

4.附带简单讲一下mysqlcheck使用详解
用法:

复制代码 代码如下:
mysqlcheck [OPTIONS] database [tables]
mysqlcheck [OPTIONS] –databases DB1 [DB2 DB3...]
mysqlcheck [OPTIONS] –all-databases

常用选项:
-A 所有数据库
-a 分析指定的表
-c 检查库或表
-r 修复库或表
-o 优化指定的表
-h mysql服务主机
-P 端口
-u 用户名
-p 密码
--auto-repair    修复已损坏表

三、获得mysqlcheck.exe

通过mysql.com下载你对应版本号的mysql安装包(noinstall 无需安装版本)。安装完mysql数据库即安装了此命令,在路径mysql/mysql server 5.0/bin下。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表