Mycat 整顿 MySQL 8.x 踩坑实践
发布时间:2022-03-03 04:59:15 所属栏目:MySql教程 来源:互联网
导读:Mycat 目前还未全面支持MySQL 8以上的版本,可能会导致一些问题,例如Mycat连接MySQL 8时可能会报密码错误,因为新版的密码加密方式与旧版不一样。还有就是时区问题,新版的连接方式需要增加时区参数。除此之外,可能还会有一些其他问题。因此,我们需要更改
Mycat 目前还未全面支持MySQL 8以上的版本,可能会导致一些问题,例如Mycat连接MySQL 8时可能会报密码错误,因为新版的密码加密方式与旧版不一样。还有就是时区问题,新版的连接方式需要增加时区参数。除此之外,可能还会有一些其他问题。因此,我们需要更改Mycat的一些配置,让其能正常连接MySQL 8.x。 接着使用chmod命令设置该驱动包的权限: [root@txy-server /usr/local/mycat]# chmod 777 lib/mysql-connector-java-8.0.18.jar 修改 schema.xml 修改位于conf目录下的schema.xml配置文件,目的是更改Mycat连接MySQL的方式: [root@txy-server /usr/local/mycat]# vim conf/schema.xml 修改dataHost标签中的dbDriver属性为jdbc,以及修改 writeHost 标签中的url属性: <dataHost name="localhost1" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="jdbc" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="hostM1" url="jdbc:mysql://192.168.130.28:3306?useSSL=false&serverTimezone=GMT%2B8" user="root" password="123456"> </writeHost> </dataHost> 修改 server.xml 修改位于conf目录下的server.xml配置文件: [root@txy-server /usr/local/mycat]# vim conf/server.xml 将useHandshakeV10设置为1,如果没该标签则添加即可: <system> <property name="useHandshakeV10">1</property> ... </system> 重启 Mycat 并测试 重启 Mycat: [root@txy-server /usr/local/mycat]# mycat stop Stopping Mycat-server... Stopped Mycat-server. [root@txy-server /usr/local/mycat]# mycat start Starting Mycat-server... [root@txy-server /usr/local/mycat]# 在测试能否正常连接 Mycat 时又遇到了另一个问题,使用MySQL 8.x的客户端工具连接 Mycat 报了个密码错误: [root@txy-server ~]# mysql -uroot -p -P9066 -h227.0.0.1 Enter password: ERROR 1045 (HY000): Access denied for user 'root', because password is error [root@txy-server ~]# 同样,这也是因为MySQL 8以上的版本与之前版本的密码加密方式不一样。而 Mycat 目前还是只支持5.x版本的加密方式,所以使用8以上版本的MySQL客户端工具连接Mycat时就会报密码错误。 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |