1. 首页
  2. 技术知识

MyCat环境搭建详细教程

目录

    一、准备工作二、下载安装mycat三、编辑配置文件四、卸载重新安装jdk五、开启mycat六、常见问题

一、准备工作

1、确保jdk已安装成功,并且jdk版本选用1.7以上版本

2、准备一台新的主机mysql_mycat放到master的前面做X

  1. mycat ip 192.168.232.13

复制代码 3、将三台机器互做本地解析

  1. 192.168.232.11 mysql_master
  2. 192.168.232.12 mysql_slave1
  3. 192.168.232.13 mysql_slave2
  4. 192.168.232.14 mysql_mycat

复制代码 架构:

二、下载安装mycat

我们通过本地上传mycat包来安装mycat

  1. [root@mysql_mycat ~]# tar xf Mycat-server-1.6.5-release-linux.tar.gz -C /usr/local/

复制代码 cd 到/usr/local目录下,多了一个mycat文件夹

三、编辑配置文件

  1. [root@mysql_mycat conf]# cd mycat/conf
  2. [root@mysql_mycat conf]# vim server.xml

复制代码 1.server.xml

  1. <user name=”mycat” defaultAccount=”true”>
  2.                 <property name=”password”>Qf@12345!</property>
  3.                 <property name=”schemas”>testdb</property>
  4.                 <!– 表级 DML 权限设置 –>
  5.                 <!–            
  6.                 <privileges check=”false”>
  7.                         <schema name=”TESTDB” dml=”0110″ >
  8.                                 <table name=”tb01″ dml=”0000″></table>
  9.                                 <table name=”tb02″ dml=”1111″></table>
  10.                         </schema>
  11.                 </privileges>           
  12.                  –>
  13.         </user>
  14.         <!–只读用户–>
  15.         <user name=”mycat_read”>
  16.                 <property name=”password”>Qf@12345!</property>
  17.                 <property name=”schemas”>TESTDB</property>
  18.                 <property name=”readOnly”>true</property>
  19.         </user>

复制代码 2.编辑schema.xml

  1. [root@mysql_mycat conf]# vim schema.xml

复制代码

  1. <?xml version=”1.0″?>
  2. <!DOCTYPE mycat:schema SYSTEM “schema.dtd”>
  3. <mycat:schema xmlns:mycat=”http://io.mycat/”>
  4.         <schema name=”testdb” checkSQLschema=”false” sqlMaxLimit=”100″ dataNode=”dn1″></schema>
  5.         <dataNode name=”dn1″ dataHost=”localhost1″ database=”testdb”/>
  6.         <dataHost name=”localhost1″ maxCon=”1000″ minCon=”10″ balance=”3″ writeType=”0″ dbType=”mysql” dbDriver=”native” switchType=”1″  slaveThreshold=”100″>
  7.                 <heartbeat>select user()</heartbeat>
  8.                 <writeHost host=”mysql_master” url=”192.168.232.11:3306″ user=”mycat” password=”Qf@12345!” >
  9.                         <readHost host=”mysql_slave1″ url=”192.168.232.12:3306″ user=”mycat” password=”Qf@12345!” />
  10.                 </writeHost>
  11.         </dataHost>
  12. </mycat:schema>

复制代码 注意:一定要严格遵守标签开始和结尾格式,否则会报错导致mycat启动后自动关闭

3.在mysql_mycat上创建库

  1. mysql> create database testdb;
  2. mysql> use testdb;
  3. mysql> create table testdb.t1(id int);
  4. mysql> insert into testdb.t1 values(1);

复制代码 4.在master上给用户授权

  1. [root@mysql_master ~]# mysql -uroot -p
  2. mysql> grant all on testdb.* to mycat@’%’ identified by ‘Qf@12345!’;
  3. mysql> flush privileges;

复制代码 5.在mycat机器上测试mycat用户登录master

  1. [root@mysql_mycat ~]# mysql -umycat -p’Qf@12345!’ -h mysql_master

复制代码 登录上之后不进行任何操作,直接退出

6.在wrAPPer.conf中添加

  1. [root@mycat mycat]# cd conf/
  2. [root@mysql_mycat conf]# vim wrapper.conf

复制代码 #在设置JVM哪里添加如下内容

wrapper.startup.timeout=300 //超时时间300秒

启动:

  1. [root@mysql_mycat mycat]# bin/mycat start
  2. Starting Mycat-server…
  3. [root@mysql_mycat mycat]# jps
  4. 3814 Jps
  5. 3801 WrapperSimpleApp

复制代码 再次启动jps查看,如果进程丢失一个,则是因为jdk版本问题,更换jdk

四、卸载重新安装jdk

1.卸载原有jdk版本

  1. [root@mysql_mycat mycat]# java -version

复制代码 查看jdk所有包

[root@mysql_mycat ~]# rpm -qa | grep openjdk

卸载:[root@mysql_mycat ~]# rpm -qa | grep openjdk |xargs rpm -e –nodeps

再查看:[root@mysql_mycat ~]# rpm -qa | grep openjdk

发现jdk已全部删除

2.安装新jdk1.8

(1)从本地上传jdk文件压缩包

(2)解压缩

  1. [root@mysql_mycat ~]# tar xzf jdk-8u162-linux-x64.tar.gz -C /usr/local/
  2. [root@mysql_mycat ~]# cd /usr/local/
  3. [root@mysql_mycat local]# mv jdk1.8.0_162/ java

复制代码 (3)设置环境变量

  1. [root@mysql_mycat ~]# vim /etc/profile
  2. export JАVA_HOME=/usr/local/java
  3. export JRE_HOME=$JАVA_HOME/jre
  4. export CLASSPATH=.:$JАVA_HOME/lib/dt.jar:$JАVA_HOME/lib/tools.jar:$JRE_HOME/lib
  5. export PATH=$PATH:$JАVA_HOME/bin:$JRE_HOME/bin

复制代码 然后使之生效:

  1. [root@mysql_master local]# source /etc/profile

复制代码 (4)查看java版本

  1. [root@mysql_mycat ~]# java -version
  2. java version “1.8.0_162”
  3. Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
  4. Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

复制代码
五、开启mycat

  1. [root@mysql_mycat mycat]# bin/mycat start
  2. [root@mysql_mycat mycat]# jps
  3. 7173 WrapperSimpleApp
  4. 7189 Jps
  5. 查看8066端口
  6. [root@mysql_mycat ~]# netstat -lntp | grep java

复制代码 (1)将master当做mycat的客户端

  1. [root@mysql_master ~]# mysql -umycat -hmysql_mycat -p’Qf@12345!’ -P 8066

复制代码
六、常见问题

1.在master上登录:mysql -umycat -hmysql_mycat -p’Qf@12345!’ -P 8066

2.若出现连接失败,大概率是mycat未启动

3.cd到/mycat/bin/mycat目录,start启动

4.查看jps,有两个进程,启动成功

5.多行注释: <![CDATA[—内容—]]>

6.mycat配置的密码是Qf@12345! 7.插入数据操作在mycat端

七、show tables报错

如果在show table报错:mysql> show tables;ERROR 3009 (HY000): java.lang.IllegalArgumentException: Invalid DataSource:0解决方式:登录master服务将mycat的登录修改为%mysql> update user set Host = ‘%’ where User = ‘mycat’ and Host = ‘localhost’;Query OK, 1 row affected (0.00 sec)Rows matched: 1 Changed: 1 Warnings: 0mysql> flush privileges;或者在授权用户mycat权限为*.*到此这篇关于MyCat环境搭建详细教程的文章就介绍到这了,更多相关MyCat环境搭建内容请搜索共生网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持共生网络!

原创文章,作者:starterknow,如若转载,请注明出处:https://www.starterknow.com/118631.html

联系我们