MYSQL管理

定期维护你的数据表。
 
工具:mysqlcheck   myisamchk
    mysqlcheck客户端可以检查和修复MyISAM表。它还可以优化和分析表。
    mysqlcheck的功能类似myisamchk,但其工作不同。
    主要差别是当mysqld服务器在运行时必须使用mysqlcheck,而myisamchk应用于服务器没有运行时。
    使用mysqlcheck的好处是不需要停止服务器来检查或修复表。

执行方法:
cmd> mysqlcheck[options] db_name [tables]
cmd> mysqlcheck[options] ---database DB1 [DB2 DB3...]
cmd> mysqlcheck[options] --all--database

参数:
--all--database,-A
--analyze,-a  分析表。
--auto-repair  如果某个被检查的表破坏了,自动修复它。检查完所有表后自动进行所有需要的修复。
--check,-c  检查表的错误。
--check-only-changed,-C 只检查上次检查以来已经更改的或没有正确关闭的表。
---database,-B  处理数据库中命名的所有表。使用该选项,所有字名参量被看作数据库名,而不是表名。
--extended,-e  如果你正使用该选项来检查表,可以确保它们100%地一致,但需要很长的时间。
   如果你正使用该选项来修复表,则运行扩展修复,不但执行的时间很长,而且还会产生大量的垃圾行!
--fast,-F  只检查没有正确关闭的表。
--force,-f  即使出现SQL错误也继续。
--medium-check,-m 执行比--extended操作更快的检查。只能发现99.99%的错误,在大多数情况下这已经足够了。
--optimize,-o  优化表。
--quick,-q  如果你正使用该选项在检查表,它防止扫描行以检查错误链接的检查。这是最快的检查方法。
   如果你正使用该选项在修复表,它尝试只修复索引树。这是最快的修复方法。
--repair,-r  执行可以修复大部分问题的修复,只是唯一值不唯一时不能修复。
--tables  覆盖---database或-B选项。选项后面的所有参量被视为表名。

 

 

 

 

 

Innodb 表则可以通过执行以下语句来整理碎片,提高索引速度:

ALTER TABLE tbl_name ENGINE = Innodb;
这其实是一个 NULL 操作,表面上看什么也不做,实际上重新整理碎片了。

通常使用的 MyISAM 表可以用上面提到的恢复方法来完成。如果是索引坏了,可以用 myisamchk 工具来重建索引。而对于 Innodb 表来说,就没这么直接了,因为它把所有的表都保存在一个表空间了。不过 Innodb 有一个检查机制叫 模糊检查点,只要保存了日志文件,就能根据日志文件来修复错误。可以在 my.cnf 文件中,增加以下参数,让 mysqld 在启动时自动检查日志文件:

innodb_force_recovery = 4
关于该参数的信息请查看手册。

 

 

DESCRIBE语法(获取有关列的信息)
{DESCRIBE | DESC} tbl_name [col_name | wild]

mysql> DESCRIBE city;

SHOW [FULL] COLUMNS FROM tbl_name [FROM db_name] [LIKE 'pattern']
SHOW CREATE DATABASE db_name
SHOW CREATE TABLE tbl_name
SHOW DATABASES [LIKE 'pattern']
SHOW ENGINE engine_name {LOGS | STATUS }
SHOW [STORAGE] ENGINES
SHOW ERRORS [LIMIT [offset,] row_count]
SHOW GRANTS FOR user
SHOW INDEX FROM tbl_name [FROM db_name]
SHOW INNODB STATUS
SHOW [BDB] LOGS
SHOW PRIVILEGES
SHOW [FULL] PROCESSLIST
SHOW [GLOBAL | SESSION] STATUS [LIKE 'pattern']
SHOW TABLE STATUS [FROM db_name] [LIKE 'pattern']
SHOW [OPEN] TABLES [FROM db_name] [LIKE 'pattern']
SHOW TRIGGERS
SHOW [GLOBAL | SESSION] VARIABLES [LIKE 'pattern']
SHOW WARNINGS [LIMIT [offset,] row_count]

SHOW语句还有一些形式,可以提供有关复制型主服务器和从属服务器的信息。这些形式在13.6节,“复制语句”中进行了叙述。
SHOW BINLOG EVENTS
SHOW MASTER LOGS
SHOW MASTER STATUS
SHOW SLAVE HOSTS
SHOW SLAVE STATUS

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值