体验MyCat

Mycat是基于开源cobar演变而来,我们对cobar的代码进行了彻底的重构,使用NIO重构了网络模块,并且优化了Buffer内核,增强了聚合,Join等基本特性,同时兼容绝大多数数据库成为通用的数据库中间件。

一、安装mycat

MyCAT 是使用 JAVA 语言进行编写开发,使用前需要先安装 JAVA 运行环境(JRE),由于 MyCAT 中使用了 JDK7 中的一些特性,所以要求必须在 JDK7 以上的版本上运行

环境准备

  (1) JDK 下载(必须 JDK7 或更高版本)http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

  (2)mysql下载http://dev.mysql.com/downloads/mysql/5.5.html#downloads

    注:MyCAT 支持多种数据库接入,如:MySQL、 SQLServer、 Oracle、 MongoDB 等,推荐使用 MySQL

  (3) MyCAT下载https://github.com/MyCATApache/Mycat-download

    手册https://github.com/MyCATApache/Mycat-Server/wiki

二、配置mycat

1、mycat的配置

  文件全部基于xml文件来完成,位于mycat路径下的conf目录

2、基本配置 

  修改server.xml

<user name="test"> //配置连接到mycat的用户名及密码等

<property name="password">test</property>

<property name="schemas">testdb</property> //配置逻辑数据库名

</user>

<user name="user">

<property name="password">user</property>

<property name="schemas">testdb</property>

<property name="readOnly">true</property> //只读用户

</user>

  修改schema.xml

<?xml version="1.0"?>

<!DOCTYPE mycat:schema SYSTEM "schema.dtd">

<mycat:schema xmlns:mycat="http://org.opencloudb/">

<schema name="testdb" checkSQLschema="false" sqlMaxLimit="100"> //逻辑数据库名及相关配置

<!– global table is auto cloned to all defined data nodes ,so can join

with any table whose sharding node is in the same data node –>

<table name="goods" primaryKey="ID" type="global" dataNode="dn1,dn2" /> //定义了一张全局表

</schema>

<dataNode name="dn1" dataHost="192.168.1.204" database="db1" /> //定义分片节点,位于为2台不同的linux主机

<dataNode name="dn2" dataHost="192.168.1.143" database="db2" /> //2个不同的主机使用了不同的物理库名

//注:也可以在同一个实例上来定义分片,库名不同即可

<dataHost name="192.168.1.204" 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.1.204:3306" user="mycat" //连接到物理数据库地址用户名密码等

password="pwd">

</writeHost>

</dataHost>

<dataHost name="192.168.1.143" 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.1.143:3307" user="mycat"

password="pwd">

</writeHost>

</dataHost>

</mycat:schema>

三、启动mycat

1、直接运行

mycat.bat console

startup_nowrap.bat

2、装载成服务启动

mycat.bat install

mycat start

四、演示mycat

1、登录

 mycat 有两个端口,8066 数据端口,9066 管理端口

mysql -h127.0.0.1 -utest -ptest -P9066 [-dmycat] 

-h 后面是主机,即当前 mycat 按照的主机地址,本地可用 127.0.0.1 远程需要远程 ip

-u Mycat server.xml 中配置的逻辑库用户

-p Mycat server.xml 中配置的逻辑库密码

-P 后面是端口 默认 9066,注意 P 是大写

-d Mycat server.xml 中配置的逻辑库

数据端口与管理端口的配置端口修改:

数据端口默认 8066,管理端口默认 9066 ,如果需要修改需要配置 serve.xml

2、演示

mysql -utest -ptest -P9066 -dtestdb  --登录

show @@help;-- 获取有关管理的相关命令

show @@database; -- 查看逻辑数据库

show @@datanode;--查看分片节点

show @@server;--查看服务器状态

show @@version; --查看版本

还有很多,还有待研究

 

 

   

posted @ 2016-12-21 09:45  慕尘  阅读(185)  评论(0编辑  收藏  举报