Mycat整合MySQL过程报错的解决方法

Mycat整合MySQL过程报错怎么办?这个问题可能是我们日常学习或工作经常见到的。通过这个问题,希望你能收获更多。下面是解决这个问题的步骤内容。

站在用户的角度思考问题,与客户深入沟通,找到保靖网站设计与保靖网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计制作、成都网站建设、企业官网、英文网站、手机端网站、网站推广、域名申请网站空间、企业邮箱。业务覆盖保靖地区。

下载8.x版本的驱动

首先需要下载8.x版本的驱动,Mycat 默认的MySQL驱动版本为5.x。到maven中央仓库上复制8.x驱动jar包的下载地址,然后到Linux上使用wget命令进行下载:

[root@txy-server ~]# cd /usr/local/src
[root@txy-server /usr/local/src]# wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.18/mysql-connector-java-8.0.18.jar

将驱动包移动到mycat的lib目录下,并删除原本的5.x驱动包:

[root@txy-server /usr/local/src]# mv mysql-connector-java-8.0.18.jar /usr/local/mycat/lib/
[root@txy-server /usr/local/src]# rm -rf /usr/local/mycat/lib/mysql-connector-java-5.1.35.jar

接着使用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属性:


    select user()
    
    

修改 server.xml

修改位于conf目录下的server.xml配置文件:

[root@txy-server /usr/local/mycat]# vim conf/server.xml

useHandshakeV10设置为1,如果没该标签则添加即可:


    1
    ...

重启 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时就会报密码错误。

解决方式主要有两种,一是指定mysql客户端连接时的加密方式。如下示例:

[root@txy-server ~]# mysql -uroot -p -P9066 -h227.0.0.1 --default-auth=mysql_native_password

二是采用5.x版本的MySQL客户端工具来连接 Mycat。如下示例:

[root@txy-server /usr/local/mysql-5.7.28]# bin/mysql -uroot -p -P9066 -h227.0.0.1

看完这篇文章,你能够独立解决Mycat整合MySQL过程报错的问题了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读。


分享名称:Mycat整合MySQL过程报错的解决方法
地址分享:http://scyanting.com/article/gspdjd.html