代码改变世界

mysqlcheck与myisamchk的区别

  abce  阅读(2643)  评论(0编辑  收藏  举报

mysqlcheck和myisamchk都可以用来检测和修复表。(主要是MyISAM表)
但是也有以下不同点:
1.都可以检查、分析和修复myisam表。但是mysqlcheck也可以检查、分析innodb表;myisamchk可以enabling、disabling索引。
2.mysqlcheck是客户端工具,通过网络与mysql server连接,要求server必须是在线的;myisamchk不是客户端程序,可以直接在myisam表上操作。
3.mysqlcheck是通过mysql server自身对表进行检查和修复;myisamchk要求被检测表是没有被打开、或未被使用,如果myisamchk和mysql server同时对表操作,可能导致表被损坏。

 

mysqlcheck有三种使用模式,取决于用户如何调用它:

1.mysqlcheck默认的第一个参数是数据库名:

1
> mysqlcheck testdb

第一个参数后面的参数被认为是数据库中对应的表:

1
> mysqlcheck testdb table1 table2

2.也可以使用参数--databases(-B)指定多个数据库:

1
> mysqlcheck --databases db1 db2 db3

3.检查所有的数据库:

1
> mysqlcheck --all-databases

  

myisamchk默认是检查表

1.检查表(也可以使用索引文件)

1
2
> myisamchk table1
> myisamchk table1.MYI

2.修复表

1
> myisamchk -recover table1

 

其它参数参考文档! 

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示