Mysql实例mysql中优化和修复数据库工具mysqlcheck详细介绍
《Mysql实例mysql中优化和修复数据库工具mysqlcheck详细介绍》要点: MYSQL应用一、mysqlcheck简介 MYSQL应用mysqlcheck客户端可以检查和修复MyISAM表.它还可以优化和分析表. MYSQL应用mysqlcheck的功能类似myisamchk,但其工作不同.主要差别是当mysqld服务器在运行时必须使用mysqlcheck,而myisamchk应用于服务器没有运行时.使用mysqlcheck的好处是不需要停止服务器来检查或修复表.使用myisamchk修复失败是不可逆的. MYSQL应用Mysqlcheck为用户提供了一种方便的使用SQL语句CHECK TABLE、REPAIR TABLE、ANALYZE TABLE和OPTIMIZE TABLE的方式.它确定在要执行的操作中使用使用哪个语句,然后将语句发送到要执行的服务器上. MYSQL应用同其它客户端比较,mysqlcheck有一个特殊特性.重新命名二进制可以更改检查表的默认行为(--check).如果你想要一个工具默认可以修复表的工具,只需要将mysqlcheck重新复制为mysqlrepair,或者使用一个符号链接mysqlrepair链接mysqlcheck.如果调用mysqlrepair,可按照命令修复表. MYSQL应用下面的名可用来更改mysqlcheck的默认行为: MYSQL应用mysqlanalyze? MYSQL应用mysqloptimize? MYSQL应用二、mysqlcheck的使用 MYSQL应用1.有3种方式来调用mysqlcheck: shell> mysqlcheck[options] db_name [tables] shell> mysqlcheck[options] ---database DB1 [DB2 DB3...] shell> mysqlcheck[options] --all--database MYSQL应用如果没有指定任何表或使用---database或--all--database选项,则检查整个数据库. MYSQL应用2.修复所有的数据库 代码如下: mysqlcheck -a -c -o -r -m --all-databases -uroot -p?MYSQL应用使用上面的命令即可最佳化所有数据库 MYSQL应用参数含意: -c = Check table for errors -o = Optimise table -r = Can fix almost anything except unique keys that aren't unique -m = --medium-check MYSQL应用注:MYSQL版本为5.5时,命令中请删除-o MYSQL应用3.修复指定的数据库 代码如下: mysqlcheck -o -r -uroot -p888888 datanamemysqlcheck -hlocalhost -auto-repair -uroot -p****** dataname MYSQL应用4.附带简单讲一下mysqlcheck使用详解 mysqlcheck [OPTIONS] Cdatabases DB1 [DB2 DB3...] mysqlcheck [OPTIONS] Call-databases 常用选项: -A 所有数据库 -a 分析指定的表 -c 检查库或表 -r 修复库或表 -o 优化指定的表 -h mysql服务主机 -P 端口 -u 用户名 -p 密码 --auto-repair??? 修复已损坏表 MYSQL应用三、获得mysqlcheck.exe MYSQL应用通过mysql.com下载你对应版本号的mysql安装包(noinstall 无需安装版本).安装完mysql数据库即安装了此命令,在路径mysqlmysql server 5.0bin下. MYSQL应用 MYSQL应用---help,-? MYSQL应用显示帮助消息并退出. MYSQL应用--all--database,-A MYSQL应用检查所有数据库中的所有表.与使用---database选项相同,在命令行中命名所有数据库. MYSQL应用--all-in-1,-1 MYSQL应用不是为每个表发出一个语句,而是为命名数据库中待处理的所有表的每个数据库执行一个语句. MYSQL应用--analyze,-a MYSQL应用分析表. MYSQL应用--auto-repair MYSQL应用如果某个被检查的表破坏了,自动修复它.检查完所有表后自动进行所有需要的修复. MYSQL应用--character-sets-dir=path MYSQL应用字符集的安装目录.参见5.10.1节,“数据和排序用字符集”. MYSQL应用--check,-c MYSQL应用检查表的错误. MYSQL应用--check-only-changed,-C MYSQL应用只检查上次检查以来已经更改的或没有正确关闭的表. MYSQL应用--compress MYSQL应用压缩在客户端和服务器之间发送的所有信息(如果二者均支持压缩). MYSQL应用---database,-B MYSQL应用处理数据库中命名的所有表.使用该选项,所有字名参量被看作数据库名,而不是表名. MYSQL应用---debug[=debug_options],-# [debug_options] MYSQL应用写调试日志.debug_options字符串通常为'd:t:o,file_name'. MYSQL应用--default-character-set=charset MYSQL应用使用charsetas默认字符集.参见5.10.1节,“数据和排序用字符集”. MYSQL应用--extended,-e MYSQL应用如果你正使用该选项来检查表,可以确保它们100%地一致,但需要很长的时间. MYSQL应用如果你正使用该选项来修复表,则运行扩展修复,不但执行的时间很长,而且还会产生大量的垃圾行! MYSQL应用--fast,-F MYSQL应用只检查没有正确关闭的表. MYSQL应用--force,-f MYSQL应用即使出现SQL错误也继续. MYSQL应用--host=host_name,-h host_name MYSQL应用连接给定主机上的MySQL服务器. MYSQL应用--medium-check,-m MYSQL应用执行比--extended操作更快的检查.只能发现99.99%的错误,在大多数情况下这已经足够了. MYSQL应用--optimize,-o MYSQL应用优化表. MYSQL应用--password[=password],-p[password] MYSQL应用当连接服务器时使用的密码.如果使用短选项形式(-p),选项和 密码之间不能有空格.如果在命令行中--password或-p选项后面没有 密码值,则提示输入一个密码. MYSQL应用--port=port_num,-P port_num MYSQL应用用于连接的TCP/IP端口号. MYSQL应用--protocol={TCP | SOCKET | PIPE | MEMORY} MYSQL应用使用的连接协议. MYSQL应用--quick,-q MYSQL应用如果你正使用该选项在检查表,它防止扫描行以检查错误链接的检查.这是最快的检查方法. MYSQL应用如果你正使用该选项在修复表,它尝试只修复索引树.这是最快的修复方法. MYSQL应用--repair,-r MYSQL应用执行可以修复大部分问题的修复,只是唯一值不唯一时不能修复. MYSQL应用--silent,-s MYSQL应用沉默模式.只打印错误消息. MYSQL应用--socket=path,-S path MYSQL应用用于连接的套接字文件. MYSQL应用--tables MYSQL应用覆盖---database或-B选项.选项后面的所有参量被视为表名. MYSQL应用--user=user_name,-u user_name MYSQL应用当连接服务器时使用的MySQL用户名. MYSQL应用--verbose,-v MYSQL应用冗长模式.打印关于各阶段程序操作的信息. MYSQL应用--version,-V MYSQL应用显示版本信息并退出. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |