mycat 安装 搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_16399991/article/details/82788414

mycat是什么

     是目前最流行的分布式数据库中间插件,更多解释见官网

  如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。但是,在有些场合NoSQL一些折衷是无法满足使用场景的,就比如有些使用场景是绝对要有事务与安全指标的。这个时候NoSQL肯定是无法满足的,所以还是需要使用关系性数据库。如何使用关系型数据库解决海量存储的问题呢?此时就需要做数据库集群,为了提高查询性能将一个数据库的数据分散到不同的数据库中存储,为应对此问题就出现了——MyCat 
  综上所述:Mycat作用为:能满足数据库数据大量存储;提高了查询性能。

下载安装

去mycat官网[http://www.mycat.io/ ]下载 符合你服务器的版本。 解压后就可以使用了(注意:mycat是java开发,需要安装jdk)。

root@iZ23iuzu9fvZ:[/usr/local/data/mycat]wget http://dl.mycat.io/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
--2018-09-20 15:03:29--  http://dl.mycat.io/1.6-RELEASE/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
Resolving dl.mycat.io... 210.51.26.184
Connecting to dl.mycat.io|210.51.26.184|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 15662280 (15M) [application/octet-stream]
Saving to: “Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz”

100%[====================================================================================================================================================================================================================================>] 15,662,280   507K/s   in 30s     

2018-09-20 15:04:00 (503 KB/s) - “Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz” saved [15662280/15662280]

#下载完成后解压 
root@iZ23iuzu9fvZ:[/usr/local/data/mycat]ls
Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
root@iZ23iuzu9fvZ:[/usr/local/data/mycat]
root@iZ23iuzu9fvZ:[/usr/local/data/mycat]tar -zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz 
mycat/bin/wrapper-linux-ppc-64
mycat/bin/wrapper-linux-x86-64
.........
##目录结构如下
root@iZ23iuzu9fvZ:[/usr/local/data/mycat/mycat]ll
total 24
drwxr-xr-x. 2 root root 4096 Sep 20 15:04 bin
drwxrwxrwx. 2 root root 4096 Mar  1  2016 catlet
drwxrwxrwx. 4 root root 4096 Sep 20 15:04 conf
drwxr-xr-x. 2 root root 4096 Sep 20 15:04 lib
drwxrwxrwx. 2 root root 4096 Oct 28  2016 logs
-rwxrwxrwx. 1 root root  217 Oct 28  2016 version.txt

配置

环境说明:服务器3307端口和3308端口已经安装了mysql服务区,用户名root 密码 :123456 

进入conf目录,配置server.xml 

#打开server.xml 
root@iZ23iuzu9fvZ:[/usr/local/data/mycat/mycat/conf]vim server.xml 

#配置user块  (其他配置项我们暂时先不管,可以去阅读官网文档)
......
   <user name="root"> #连接mycat的用户名
        <property name="password">123456</property> #连接mycat的密码
        <property name="schemas">mysql3307</property>  #真实数据库的映射,需要在schema.xml 中配置

        <!-- 表级 DML 权限设置 -->
        <!--            
        <privileges check="false">
            <schema name="TESTDB" dml="0110" >
                  <table name="tb01" dml="0000"></table>
                  <table name="tb02" dml="1111"></table>
            </schema>
        </privileges>           
       -->
   </user>

......

 进入conf目录,配置schema.xml 

  <schema name="mysql3307" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"><!-- name属性就是我们在server.xml中配置的schema属性一致 DataNode属性就是下边 dataNode -->
              
        </schema>
        
        <dataNode name="dn1" dataHost="localhost1" database="test" /><!--这里database就是实际数据的名称 我这里用test dataHost属性和下边的dataHost连接-->
        <dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
                          writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
                <heartbeat>select user()</heartbeat>
                <!-- can have multi write hosts -->
                
                <!--<writeHost host="hostM1" url="localhost:3306" user="root"
                                   password="123456">
                        <readHost host="hostS2" url="192.168.1.200:3306" user="root" password="xxx" />
                </writeHost>
                -->
                <writeHost host="hostS1" url="127.0.0.1:3307" user="root"
                                   password="123456" />
                <!-- <writeHost host="hostM2" url="localhost:3316" user="root" password="123456"/> -->
        </dataHost>

至此简单的配置已经完成

启动mycat

root@iZ23iuzu9fvZ:[/usr/local/data/mycat/mycat]./bin/mycat start
Starting Mycat-server...

启动是否成功 可以查看日志文件logs/wrapper.log ,启动成功或者失败、失败原理这里都有记录。

例如;这是我一次配饰错误导致的启动失败。

 或者使用 ./bin/mycat status 命令查看运行状态

root@iZ23iuzu9fvZ:[/usr/local/data/mycat/mycat]./bin/mycat status
Mycat-server is running (15298).

测试连接

 连接方式和操作 和连接mysql的方式一样, 如图:

可以看到连接成功。 root用户就是我们在server.xml 中配置的内容, 8066 是mycat监听的端口。

至此简单的mycat就搭建完成。

猜你喜欢

转载自blog.csdn.net/qq_16399991/article/details/82788414