CentOS7 mycat 連接mysql8.x 配置及報錯解決

一、CentOS7安裝MYCAT中間件
JAVA環境安裝:            https://www.cnblogs.com/chaizhenhua/p/12383859.html
Mycat官方網站地址:        http://www.mycat.io/
Mycat程序下載地址:        http://dl.mycat.io/

1、下載Mycat程序二進制包:

[root@local-test ~]# wget http://dl.mycat.io/1.6.7.4/Mycat-server-1.6.7.4-release/Mycat-server-1.6.7.4-release-20200105164103-linux.tar.gz
[root@local-test ~]# ls
Mycat-server-1.6.7.4-release-20200105164103-linux.tar.gz
[root@local-test ~]#

2、安裝Mycat
a.解壓

[root@local-test ~]# tar xf Mycat-server-1.6.7.4-release-20200105164103-linux.tar.gz -C /usr/local/
[root@local-test ~]# ll /usr/local/
總用量 0
drwxr-xr-x  7 root  root   85 2月  28 14:02 mycat

b.Mycat目錄結構:

[root@local-test ~]# cd /usr/local/mycat/
[root@local-test mycat]# ll
總用量 12
drwxr-xr-x 2 root root  190 2月  28 14:02 bin                         #啓動腳本
drwxrwxrwx 2 root root    6 10月 22 09:26 catlet                  #這個目前還沒有實際意義,先忽略
drwxrwxrwx 4 root root 4096 2月  28 14:02 conf                 #配置文件目錄
drwxr-xr-x 2 root root 4096 2月  28 14:02 lib                        #程序需要的各種包
drwxrwxrwx 2 root root    6 1月   5 03:40 logs                        #日誌目錄
-rwxrwxrwx 1 root root  227 1月   5 03:41 version.txt            #版本信息
[root@local-test mycat]#

c.啓動Mycat

[root@local-test ~]# cd /usr/local/mycat/bin/
[root@local-test bin]# ./mycat start
Starting Mycat-server...
[root@local-test bin]#

d.檢測mycat啓動是否成功

[root@local-test bin]# ps -ef|grep mycat

mycat默認用戶名密碼是:root/123456

 

1 、登錄後臺管理窗口
此登錄方式用於管理維護 Mycat

mysql -umycat -p123456 -P 9066 -h 192.168.140.128

#常用命令如下:

show database

2 、登錄 數據 窗口
此登錄方式用於通過 Mycat 查詢數據,我們選擇這種方式訪問 Mycat

mysql -umycat -p123456 -P 8066 -h 192.168.140.128
mysql -umycat -p123456 -h127.0.0.1 -P8066 --default-auth=mysql_native_password

啓動MyCat:
 

./mycat start
控制檯啓動:./mycat console

查看啓動狀態:

./mycat status

停止:

./mycat stop

重啓:

./mycat restart

---------------------------------------------------------------------------------------------------------------------------------

登陸報錯:Using a password on the command line interface can be insecure.
ERROR 1045 (HY000): Access denied for user 'mycat', because password is error

[root@localhost ~]# mysql -umycat -p123456 -h127.0.0.1 -P8066
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (HY000): Access denied for user 'mycat', because password is error

解決方法:

1、修改server.xml,增加:

		<property name="defaultSqlParser">druidparser</property>
		<property name="useHandshakeV10">1</property>  <!--(這裏記得修改,沒有的話要加上)-->
		<property name="mutiNodeLimitType">1</property>
		<property name="charset">utf8</property>
		<property name="serverPort">8066</property>
		<property name="managerPort">9066</property>

2、修改schema.xml,將 dbDriver="native"改爲dbDriver="jdbc",並將url改爲jdbc方式,內容如下:

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

	<schema name="TESTDB" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn1">
		<!-- auto sharding by id (long) -->
		<!-- <table name="travelrecord" dataNode="dn1" rule="auto-sharding-long" /> -->

		<!-- <table name="company" primaryKey="ID" type="global" dataNode="dn1,dn2,dn3" /> -->
	</schema>
	
	<dataNode name="dn1" dataHost="localhost1" database="mycatdb" />

	<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
			  writeType="0" dbType="mysql" dbDriver="jdbc" switchType="1"  slaveThreshold="100"> <!-- dbDriver="native" -->
		<heartbeat>select user()</heartbeat>
		<!-- can have multi write hosts -->
		<writeHost host="hostM1" url="jdbc:mysql://localhost:3306?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF8&amp;serverTimezone=UTC" user="root" password="root">
			<!-- can have multi read hosts -->
			<readHost host="hostS2" url="jdbc:mysql://192.168.232.135:3306?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF8&amp;serverTimezone=UTC" user="root" password="root" />
		</writeHost>
	</dataHost>
</mycat:schema>

3、重新啓動mycat

4、登陸mycat,在後面指定mysql客戶端連接時的加密方式:--default-auth=mysql_native_password

[root@localhost ~]# mysql -umycat -p123456 -h127.0.0.1 -P8066 --default-auth=mysql_native_password

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章