这是一个使用错误的mysql版本的工具导致的低级问题:
我的mysql版本是8.0.17,由于需要单独安装mysql-devel,为了省事,结果从iso镜像里安装了低版本的rpm包,结果rpm安装后影响了原有的8.0.17版本的环境变量,不知不觉的任何mysql命令都是低版本的了:
[root@mgr1 data]# mysql -V
Logging to file '/mysqldata/citicsql/tee.log'
mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
实际上应该是这个版本:
[root@mgr1 data]# /usr/local/mysql/bin/mysql -V
Logging to file '/mysqldata/citicsql/tee.log'
/usr/local/mysql/bin/mysql Ver 8.0.17 for linux-glibc2.12 on x86_64 (MySQL Community Server - GPL)
结果在使用mysqlbinlog解析binlog日志时报出如下错误:
一脸懵。结果百度发现就是工具版本用错了。
在生产中:这种情况很常见,见过在mysql服务器上安装mariadb版本的rpm包,使用mysql工具时找不到命令的。。,但又不敢轻易卸载rpm包(依赖太多),只能给到绝对路径,临时解决一下。
引以为戒!