除了查看 RELEASE 类文件,查看 Mycat 版本信息还有 4 种常用且靠谱的方法,覆盖「Mycat 已启动 / 未启动、本地 / 远程场景」,操作简单且精准,以下是详细实操(CentOS 环境为主):
Mycat 的二进制脚本自带版本查询参数,无论 Mycat 是否启动,进入安装目录的 bin 文件夹即可查询,是最直接的方式。
cd /usr/local/mycat/bin
./mycat version
./mycat -v
Mycat-server 1.6.7.6-release
Copyright (c) 2013-2022, Mycat Software Foundation (http://www.mycat.org.cn)
- 核心信息:直接显示版本号(如
1.6.7.6-release),无需额外解析。
- 优势:无需启动 Mycat,秒级查询,适合所有场景。
Mycat 成功启动后,会在核心日志文件中明确记录版本信息,适合已启动但无法执行命令行的场景(如远程服务器仅能访问日志)。
grep -i "version" /usr/local/mycat/logs/mycat.log
tail -100 /usr/local/mycat/logs/mycat.log | grep -i "version"
2025-11-28 09:30:00 [INFO] [main] - Mycat Version: 1.6.7.6-release
- 优势:无需额外操作,直接读取现有日志,适合排查问题时顺带查版本。
- 注意:若 Mycat 未启动,日志中无该记录,需先启动 Mycat(
./mycat start)。
Mycat 默认开放 9066 管理端口,可通过 MySQL 客户端(如 Navicat、命令行)连接后,执行自定义管理命令查询版本,适合远程验证(如本地无服务器权限,仅能远程连接)。
mysql -h 服务器IP -u 应用用户名 -p 应用密码 -P 9066
show @@version;
+----------------+
| VERSION |
+----------------+
| 1.6.7.6-release|
+----------------+
1 row in set (0.00 sec)
- 优势:支持远程查询,结果结构化,适合运维人员远程验证版本。
- 注意:需确保 Mycat 已启动,且 9066 端口已开放(
firewall-cmd --permanent --add-port=9066/tcp && firewall-cmd --reload)。
若记得 Mycat 安装包的下载路径,或未删除安装包,可直接通过文件名获取版本;若已解压,也可通过解压目录的命名推断。
ls -l /root/Mycat-server-*.tar.gz
ls -l /usr/local/ | grep mycat
- 优势:无需进入 Mycat 目录,快速验证,适合仅记得安装包的场景。
- 注意:若安装包已删除或解压后重命名目录,该方法无效。
- 原因:Mycat 脚本无执行权限。
- 解决方案:添加执行权限:
chmod +x /usr/local/mycat/bin/mycat。
- 原因:① Mycat 未启动;② 9066 端口未开放;③ 用户名 / 密码错误。
- 解决方案:
- 启动 Mycat:
/usr/local/mycat/bin/mycat start;
- 开放端口:
firewall-cmd --permanent --add-port=9066/tcp && firewall-cmd --reload;
- 验证用户名 / 密码:确保与
server.xml 中配置的应用用户一致。
- 原因:Mycat 未正常启动,或日志文件被清空。
- 解决方案:查看启动日志
wrapper.log 确认启动状态:tail -200 /usr/local/mycat/logs/wrapper.log。
优先推荐「命令行查询」(无需启动,快捷)或「管理端口查询」(远程可用,精准);若仅能访问日志或安装包,可选择「日志查询」或「安装包命名验证」。所有方法均无需依赖 RELEASE 文件,覆盖绝大多数使用场景,按需选择即可~