ubuntu系统下使用mycat实现分库分表

首先在http://dl.mycat.io/1.6-RELEASE/下载mycat的压缩包,解压到Ubuntu环境下,我本地放在/usr/local下。

由于mycat必须使用Java环境,所以好需要配置Java开发环境https://www.oracle.com/technetwork/java/javase/archive-139210.html下载Jdk压缩包,安装后输入命令Java -version检测Java环境是否配置成功。

mycat的配置文件:

配置文件主要有三个:

1.其中rule.xml 用于分库分表的规则,tableRule用来指定规则的名称,columns表示具体以那个字段进行分库分表,algorithm与function中保持一致,function表示分库分表的函数规则,property表示对id除2来分库分表

server.xml:

serverPort表示逻辑数据库的端口

sequnceHandlerType:表示逻辑数据库处理主键自增的方式,下面回详细讲解

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

表示逻辑数据库的用户名和密码以及数据库名称

schema.xml

<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">  
        <table name="users" primaryKey="id"  dataNode="node_db01" />  
        <table name="item" primaryKey="id" autoIncrement="true" dataNode="node_db02,node_db03" rule="rule1" />
    </schema> 

中的name必须和server.xml中的数据库名称保持一直

table中的name表示逻辑数据库中的表名称,primaryKey主键为id,autoIncrement是否自增长(这里是一个注意点,稍后讲解)

dataNode表示来源的数据库

rule表示分库分表的规则,和rule.xml中名称保持一致

首先在Ubuntu创建三个数据库db0,db1,db2,其中db0数据库中创建users表,db1,db2创建item表

重启mycat,重启完后记得查看日志,需要注意的使用    ./mycat  status查看状态是不管是否正常启动都会显示Mycat-server is running (3576).

所以进入/usr/local/mycat/logs下面使用查看tail -n 50 wrapper.log 启动日志,启动正常后最后一句应该为

MyCAT Server startup successfully. see logs in logs/mycat.log

mycat逻辑表

db1数据表

db2z数据库

猜你喜欢

转载自blog.csdn.net/java_chegnxuyuan/article/details/89891519