安装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是否容许端口远程访问开放端口
# vi /etc/sysconfig/iptables
wq保存退出,重启防火墙
service iptables restart
这样6379端口就能够远程访问了
添加一个开放端口如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链接后就能够操做表了。万分感谢!