mysqlcheck修复工具
mysqlcheck工具可以检查、修复、优化和分析MyISAM引擎的表,实际上是集成了Mysql中的check、repair、analyze、tmpimize的功能。
mysqlcheck共军存在于mysql-community-client包。如果是yum或rpm安装可以使用rpm -qf `which mysqlcheck`查看到:
1 2 | [root@youxi1 ~]# rpm -qf `which mysqlcheck` mysql-community-client-5.7.16-1.el7.x86_64 |
如果是源码安装,应该可以找到/usr/local/mysql/bin/mysqlcheck(?)。
(1).mysqlcheck语法
mysqlcheck [选项] <数据库名> [表名]
mysqlcheck [选项] --databases <数据库名1> [数据库名2 数据库名3...]
mysqlcheck [选项] --all-datbases
(2).常用选项
1 2 3 4 5 6 | -c,--check 检查表 -r,--repair 修复表 -a,--analyze 分析表 -o,--tmpimize 优化表,默认包含-c选项 -u 以什么mysql用户进行操作 -p 用户的密码 |
(3).创建实验环境
1 2 3 4 5 6 7 8 9 10 11 | mysql> create database test_db; Query OK, 1 row affected (0.00 sec) mysql> use test_db; Database changed mysql> create table user_tb(id int ,name varchar(20)) engine=MyISAM; Query OK, 0 rows affected (0.02 sec) mysql> insert into user_tb values(1, '张三' ),(2, '李四' ),(3, '王五' ),(4, '赵六' ); Query OK, 4 rows affected (0.11 sec) Records: 4 Duplicates: 0 Warnings: 0 |
(4).实例
检查指定的表
1 2 3 | [root@youxi1 ~]# mysqlcheck -uroot -p123456 -c test_db user_tb; mysqlcheck: [Warning] Using a password on the command line interface can be insecure. test_db.user_tb OK |
修复指定的表
1 2 3 | [root@youxi1 ~]# mysqlcheck -uroot -p123456 -r test_db user_tb; mysqlcheck: [Warning] Using a password on the command line interface can be insecure. test_db.user_tb OK |
修复指定数据库
1 2 3 4 5 6 | [root@youxi1 ~]# mysqlcheck -uroot -p123456 -r test_db; //只有一个数据库的时候 mysqlcheck: [Warning] Using a password on the command line interface can be insecure. test_db.user_tb OK [root@youxi1 ~]# mysqlcheck -uroot -p123456 -r --databases test_db; //有多个数据库的时候 mysqlcheck: [Warning] Using a password on the command line interface can be insecure. test_db.user_tb OK |
修复所有数据库
1 2 | [root@youxi1 ~]# mysqlcheck -uroot -p123456 -r -A [root@youxi1 ~]# mysqlcheck -uroot -p123456 -r --all-databases; |
修复所有数据库时,有部分表可能不是MyISAM引擎,会报错。
有使用也会用定时计划任务,使用-o选项定时优化数据库。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性