zoukankan      html  css  js  c++  java
  • MyCat配置与使用

      MyCat主机上也要安装Mysql。

    一、读写分离配置:

      1. 上传或下载:

    wget http://dl.mycat.io/1.6.7.1/Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz

      2. 解压:

    tar xzvf /srv/ftp/Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz -C /usr/local/

      3. 打开配置文件“conf/schema.xml”,进行配置:vim /usr/local/mycat/conf/schema.xml 

        》处理关系:“<schema>”定义dataNode --> <dataNode>定义数据主机 --> <dataHost>

    <?xml version="1.0"?>
    <!DOCTYPE mycat:schema SYSTEM "schema.dtd">
    <mycat:schema xmlns:mycat="http://io.mycat/">
            <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"/>
            <dataNode name="dn1" dataHost="localhost1" database="yootk" />
            <dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
                              writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
                    <heartbeat>select user()</heartbeat>
                    <writeHost host="hostM1" url="192.168.28.224:3306" user="root"
                                       password="123456">
                            <readHost host="hostS2" url="192.168.28.225:3306" user="root" password="123456" />
                    </writeHost>
            </dataHost>
    </mycat:schema>

      4. 启动MyCat,启动之前要保证所有的MySQL服务已经正常开启,并配置好主从关系:

    /usr/local/mycat/bin/mycat start

      5. 查看MyCat连接账户:vim /usr/local/mycat/conf/server.xml

    <user name="root" defaultAccount="true">
                    <property name="password">123456</property>
                    <property name="schemas">TESTDB</property>
    </user>

      6. 登录控制台:mysql -uroot -p123456 -P9066 -DTESTDB -h127.0.0.1

        控制台的默认端口为:9066,而后需要使用的逻辑数据库为:TESTDB

      7. 使用操作命令:

    show @@help ;            //查看操作命令
    show @@database ;        //查看所有的数据库信息 ,此时返回MyCat定义的逻辑数据库
    show @@datasource ;      //查看所有的主机连接信息

      8. 如果此时要想进行数据操作,那么肯定无法在控制台中完成,则应用登录数据控制端口(8066):

    mysql -uroot -p123456 -P8066 -DTESTDB -h192.168.28.223

      9. 如果要想测试读写分离操作机制,那么像数据库里面存储一些数据信息:

        》MySQL主机增加脚本:

    /usr/local/mysql/bin/mysqld_safe --user=root > /dev/null 2>&1 &
    mysql -h127.0.0.1 -uroot -p123456
    DROP DATABASE IF EXISTS yootk ;
    CREATE DATABASE yootk CHARACTER SET UTF8 ;
    use yootk ;
    CREATE TABLE member(
       mid VARCHAR(50) ,
       name VARCHAR(50) ,
       age INT ,
       salary DOUBLE ,
       birthday DATE ,
       note  TEXT ,
       CONSTRAINT pk_mid PRIMARY KEY(mid)
    ) ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('lee','hello',10,2000.0,'2005-11-11','very good') ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('admin','administrator',10,2000.0,'2005-11-11','very good') ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('guest','administrator',10,2000.0,'2005-11-11','very good') ;

        》MyCat上执行sql:

    use yootk ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('lee-1','hello',10,2000.0,'2005-11-11',@@hostname) ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('lee-2','hello',10,2000.0,'2005-11-11',@@hostname) ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('lee-3','hello',10,2000.0,'2005-11-11',@@hostname) ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('lee-4','hello',10,2000.0,'2005-11-11',@@hostname) ;
    INSERT INTO member(mid,name,age,salary,birthday,note) VALUES ('lee-5','hello',10,2000.0,'2005-11-11',@@hostname) ;

      》在MyCat上执行数据查询操作:select * from member ;

      如果要想让wirteHost和readHost都参与读取操作,那么可以将“conf/schema.xml ”配置文件里的balance="0"修改为2,随后重新启动mycat。

        关闭:/usr/local/mycat/bin/mycat stop

        启动:/usr/local/mycat/bin/mycat start

  • 相关阅读:
    【struts1】--Servlet讲解MVC框架基本原理
    bigDecimal使用方法详解(转载)
    【web】--Ajax data选择性赋值
    【JSTL】--格式化日期--drp217
    2021-01-01:https加解密机制,你了解多少?
    2020-12-31:tcp三次握手,最后一次失败,网络会怎么样?
    2020-12-30:生产环境 CPU 占用过高,你如何解决?
    2020-12-29:mysql中,innodb表里,某一条数据删除了之后,这条数据会被真实的擦掉吗,还是删除了关系?
    2020-12-28:java中,生产环境服务器变慢,如何诊断处理?
    2020-12-27:网络调试工具都用了什么?
  • 原文地址:https://www.cnblogs.com/luliang888/p/11141408.html
Copyright © 2011-2022 走看看