如何检查数据库是否已应用-no-auto-rehash配置?
检查MySQL客户端自动重新哈希(auto rehash)状态的方法
首先要明确:auto-rehash是MySQL客户端的配置项,并非服务器端系统变量,所以你在服务器系统变量中找不到它。以下是几种实用的检查方式:
1. 查看客户端当前配置状态
登录MySQL客户端后,执行命令:
\#
该命令会输出客户端的所有当前配置,其中会明确显示auto-rehash的状态——显示auto-rehash ON表示已启用,显示OFF则说明--no-auto-rehash配置已生效。
2. 检查客户端启动参数
如果是通过命令行启动MySQL客户端,直接查看启动命令是否包含--no-auto-rehash参数:
比如启动命令为:
mysql --no-auto-rehash -u username -p
这种情况就说明已经禁用了自动重新哈希。
3. 检查客户端配置文件
查看MySQL客户端的配置文件(常见路径为~/.my.cnf、/etc/my.cnf或/etc/mysql/my.cnf,不同系统路径可能有差异),找到[mysql]小节:
- 若存在
no-auto-rehash行,说明全局禁用了自动重新哈希; - 若存在
auto-rehash行,说明已启用; - 两者都没有的话,默认是启用自动重新哈希的。
4. 测试自动补全功能
登录客户端后,输入表名的前几个字符并按Tab键:
- 能自动补全表名、字段名,说明
auto-rehash处于启用状态; - 无补全反应,大概率是
--no-auto-rehash已生效。
内容的提问来源于stack exchange,提问作者Deepak Deepu
相关产品推荐
相关产品推荐

