失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 怎样使用Mysqlcheck来检查和修复 优化表的详解

怎样使用Mysqlcheck来检查和修复 优化表的详解

时间:2020-12-01 21:21:28

相关推荐

怎样使用Mysqlcheck来检查和修复  优化表的详解

数据库|mysql教程

Mysqlcheck,MYSQL,优化表

数据库-mysql教程

asp源码编写留言页,vscode全栈插件,ubuntu待机唤醒,tomcat xml缓存,sqlite数据库去重,爬虫订单数据抓取犯法吗,数字证书 php,鹤岗seo优化网络推广,039 织梦云idc网站源码,下载网页元素,动态网页留言板模板下载lzw

易语言计算器源码,ubuntu怎样新建脚本,tomcat本身带jdk吗,厦门爬虫公司,php实现ssh终端,长寿区智能化seo推广哪家好lzw

以下的例子都是基于 MySQL 5.6 版本运行状态下(mysqlcheck是个在线工具), 不同的存储引擎对于这个命令的支持程度不同(指的是 check, repair, analyze, optimize),下面内容偏于操作,主要基于 innodb 引擎。

梦幻传奇3官方网站源码,ubuntu登陆不,tomcat7升8注意事项,爬虫小宠物视频,php 百分号编码,seo目标规划lzw

提示:OPTIMIZE 在大表时候可能会消耗很多时间,不清楚原理情况下请谨慎使用!!! innodb 一般不用 OPTIMIZE,请参见 Using MySQL OPTIMIZE tables? For InnoDB? Stop

检查特定的表

注意在shell中执行,不是在mysql的交互环境下

如果应用中提示某个表坏了,使用下面的命令来检查。

$ mysqlcheck -c newmandela order -uroot -pEnter password:newmandela.order OK

newmandela 是库名, order是表名,还需要输入用户名和密码

检查一个库中的所有表

$ mysqlcheck -c newmandela -uroot -pEnter password:newmandela.account OKnewmandela.alarm OKnewmandela.alarm_settingsOKnewmandela.auth_group OKnewmandela.auth_group_permissions OKnewmandela.auth_permission OK...

检查所有库中的所有表

全部的库和表都检查一遍了。

$mysqlcheck -c --all-databases -uroot -pEnter password:apmonitor.acinfo OKapmonitor.apdailystsOKapmonitor.apinfo OKapmonitor.apmonthstsOKapmonitor.apscanlogOKapmonitor.auth_groupOK...

如果只想检查某几个库呢? 可以使用 –databases 参数

$ mysqlcheck -c --databases newmandela radius -uroot -pEnter password:newmandela.account OKnewmandela.alarm OKnewmandela.alarm_settingsOKnewmandela.auth_group OK...

使用 mysqlcheck 分析表

$ mysqlcheck -a radius payment_transactionrecord -uroot -pEnter password:radius.payment_transactionrecord Table is already up to date

上面的命令 用来分析 radius 库的payment_transactionrecord表,-a表示 analyze

使用 mysqlcheck 优化表

# mysqlcheck -o radius payment_transactionrecord -uroot -pEnter password:radius.payment_transactionrecord OK

-o代表 optimize ,这里是优化 radius 库的payment_transactionrecord

使用 mysqlcheck 修复表

# mysqlcheck -r radius payment_transactionrecord -uroot -pEnter password:radius.payment_transactionrecord OK

-r代表 repair ,这里是 修复 radius 库的payment_transactionrecord

检查,优化,修复表组合命令

# mysqlcheck -uroot -p --auto-repair -c -o newmandelaError: mysqlcheck doesn support multiple contradicting commands.

上面的命令报错了,去掉-c

# mysqlcheck -uroot -p --auto-repair -o newmandelaEnter password:newmandela.accountnote: Table does not support optimize, doing recreate + analyze insteadstatus : OKnewmandela.alarmnote: Table does not support optimize, doing recreate + analyze insteadstatus : OKnewmandela.alarm_settingsnote: Table does not support optimize, doing recreate + analyze insteadstatus : OK

每张表都出现了Table does not support optimize, doing recreate + analyze instead, 代表什么意思呢? 它的意思不是说 innodb 引擎不支持 优化,

mysqlcheck 常用选项

A, –all-databases表示所有库

-a, –analyze分析表

-o, –optimize优化表

-r, –repair修复表错误

-c, –check检查表是否出错

–auto-repair自动修复损坏的表

-B, –databases选择多个库

-1, –all-in-1Use one query per database with tables listed in a comma separated way

-C, –check-only-changed检查表最后一次检查之后的变动

-g, –check-upgradeCheck for version dependent changes in the tables

-F, –fastCheck tables that are not closed properly

–fix-db-namesFix DB names

–fix-table-namesFix table names

-f, –forceContinue even when there is an error

-e, –extendedPerform extended check on a table. This will take a long time to execute.

-m, –medium-checkFaster than extended check option, but does most checks

-q, –quickFaster than medium check option

如果觉得《怎样使用Mysqlcheck来检查和修复 优化表的详解》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。