虛擬機CentOS6.8下安裝mycat

 

安裝mycat前,首先安裝jdk1.7及以上版本css

安裝可參照 https://www.cnblogs.com/llhhll/p/9260913.htmlhtml

 

 下載mycat 1.6版本java

 wget   https://raw.githubusercontent.com/MyCATApache/Mycat-download/master/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gzmysql

Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz

解壓後直接到 mycat 文件夾下解壓
tar -xzvf 

拷貝到
/usr/local下
cp -r /root/mycat /usr/local

  

  設置環境變量

1.第一種方式linux

輸入如下命令
vim /usr/local/mycat/.bash_profile
編輯保存如下
令修改生效,執行如下命令export MYCAT_HOME=/usr/local/mycat PATH=$PATH:$MYCAT_HOME/bin

 source .bash_profile

測試是否配置成功

執行如下命令
echo $MYCAT_HOME 
輸出結果爲
/usr/local/mycat
vim /etc/profile  編輯 參考以下:

2.第二種方式

輸入

 保存後 輸入mycat 查看是否生效nginx

 

 
...................................................................................................................................................................

mycat配置能夠參考 https://www.cnblogs.com/llhhll/p/9261248.html 

開始配置mycat配置文件

執行如下命令進行配置
vim $MYCAT_HOME/conf/server.xml 
(按i或a鍵進入 編輯,按esc退出 輸入:再輸入wq!保存執行退出)
vim $MYCAT_HOME/conf/schema.xml 

再配置

修改wrapper.conf文件

執行如下命令
cd /usr/local/mycat/conf 
vim wrapper.conf

wrapper.confvim $MYCAT_HOME/conf/
 

  修改下面節點git

wrapper.java.command=/usr/java/jdk1.8.0_65/bin/java# Java Application

個人路徑爲
wrapper.java.command=/usr/local/java/bin/java


配置完成後

啓動mycat
輸入  /usr/local/mycat/bin/mycat start 

linux環境下常見命令: 
 /usr/local/mycat/bin/mycat start 啓動 
 
 /usr/local/mycat/bin/mycat stop 中止 
 
 /usr/local/mycat/bin/mycat console 前臺運行 
 
 /usr/local/mycat/bin/mycat restart 重啓服務 
 
 /usr/local/mycat/bin/mycat pause 暫停 
 
 /usr/local/mycat/bin/mycat status 查看啓動狀態
 

   查看啓動狀態:github

    s -ef | grep mycat 或者 netstat -ntpl | grep 8066      【8066是mycat數據庫的訪問端口,記住此處不是3306】sql

........................................................................................................................................................................................................................................................數據庫

錯誤: 代理拋出異常 : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: 你的主機名: 你的主機名常見問題:

 一.首先保證兩臺數據庫服務器上的mysql已經正常啓動

二.

     解決辦法:  

 

1.修改network

vi /etc/sysconfig/network

追加一行:

HOSTNAME=你的主機名(XXXX)

 若是有,請直接進行下一步

 

2.接着修改: HOSTS

vi /etc/hosts

 添加這句後面添加 你的主機名

127.0.0.1 localhost.localdomain localhost 你的主機名(XXXX)
 
::1   localhost.localdomain localhost 你的主機名(XXXX)

保存

從新啓動mycat

三.檢查linux是否容許端口遠程訪問開放端口

1.修改防火牆配置文件 ,檢查mycat8066是否開放 並 增長
# vi /etc/sysconfig/iptables

這裏寫圖片描述

wq保存退出,重啓防火牆

service iptables restart

這樣6379端口就能夠遠程訪問了

2.linux命令開放端口

添加一個開放端口如80端口

# sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT

保存設置

/etc/rc.d/init.d/iptables save

重啓服務便可生效

/etc/init.d/iptables restart

查看開放端口是否生效

/sbin/iptables -L -n

輸出如下內容80端口已開放

ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 
四.mycat鏈接管理數據庫,操做表時報ERROR 3009 (HY000): java.lang.IllegalArgumentException: Invalid DataSource:0

1.檢查mysql是否正常啓動

2.檢查如下
Mycat安裝後,一直報錯ERROR 3009 (HY000): Java.lang.IllegalArgumentException: Invalid DataSource:0 錯誤,明顯是連接後面的MYSQL有問題,可是MYSQL配置也沒錯,後來發現MYSQL新安裝之後是不能用-h 127.0.0.1來登陸,只能sock登陸,因此登陸mysql後修改ROOT用戶,update user set host = '%' where user = 'root'; ,重啓服務後一切正常了
果斷把mysql中的mysql.user表中的root 用戶的 host改成%後,重啓mysql,mycat鏈接後就能夠操做表了。萬分感謝!

mycat鏈接管理數據庫,操做表時報ERROR 3009 (HY000): java.lang.IllegalArgumentException: Invalid DataSource:0

這類錯誤最多見是一些配置問題例如schema.xml中的dataNode的配置和實際不符合,請先仔細檢查配置項,確保配置沒有問題。若是不是配置問題,分析具體日誌看出錯緣由,常見的有: 
若是是應用連:在某些版本的Mysql驅動下鏈接Mycat會報錯,可升級最新的驅動包試下。 
若是是服務端控制檯連,確認mysql是否開啓遠程鏈接權限,或防火牆是否設置正確,或者數據庫database是否配置,或用戶名密碼是否正確。


我確實檢查了好多遍,確定不是schema.xml錯誤,mysql開啓了遠程鏈接權限,防火牆也設置正確,用戶名和密碼正確

最後在網上看到了

 

Mycat安裝後,一直報錯ERROR 3009 (HY000): Java.lang.IllegalArgumentException: Invalid DataSource:0 錯誤,明顯是連接後面的MYSQL有問題,可是MYSQL配置也沒錯,後來發現MYSQL新安裝之後是不能用-h 127.0.0.1來登陸,只能sock登陸,因此登陸mysql後修改ROOT用戶,update user set host = '%' where user = 'root'; ,重啓服務後一切正常了

果斷把mysql中的mysql.user表中的root 用戶的 host改成%後,重啓mysql,mycat鏈接後就能夠操做表了。萬分感謝!
相關文章
相關標籤/搜索