1. 事故发生
故事是这样的,在centos-8上新装的mysql,去连接同系统的MyCAT,出现了以下情况,试了很多次,尝试改了MyCAT配置文件server.xml端口和密码,都是以下情况,于是我看了下mysql版本
#这是当前主机远程连接装有MyCAT的机器
[root@client ~]#mysql -uroot -p123456 -h10.0.0.126 -P8066
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (HY000): Access denied for user ‘root‘, because password is error
#这是当前主机mysql的版本
[root@client ~]#mysql --version
mysql Ver 8.0.21 for Linux on x86_64 (Source distribution)
#于是我删掉了当前mysql,装上了mariadb
[root@client ~]#mysql --version
mysql Ver 15.1 Distrib 10.3.28-MariaDB, for Linux (x86_64) using readline 5.1
#然后再去连接装了MyCAT中间件的远程机器
[root@client ~]#mysql -uroot -p123456 -h10.0.0.126 -P8066
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 5.6.29-mycat-1.6.7.4-release-20200105164103 MyCat Server (OpenCloudDB)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement.
MySQL [(none)]> show databases;
+----------+
| DATABASE |
+----------+
| TESTDB |
+----------+
1 row in set (0.001 sec)
#有时候,这些玩意真的很烦,小白的话没有研究数据库,被版本搞了一两天都很难受
2. 总结
数据库这方面很细节,多查资料多动手,可以查阅数据库官网,中间件和数据之间版本兼容性问题。