欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

数据库中间件mycat安装与使用

程序员文章站 2022-06-18 21:06:27
1.下载 2.安装 3.配置schema.xml mycat就是把跨库的数据库表,汇集到schema(新库)中,然后就可以join查询了 4.配置server.xml 5.启动mycat 6.查看mycat状态 7.使用mysql客户端连接mycat 然后就可以使用mysql语法查询了 8. 两个表 ......

1.下载

# wget http://dl.mycat.io/1.6-release/mycat-server-1.6-release-20161028204710-linux.tar.gz

2.安装

# tar -zxvf ~/mycat-server-1.6-release-20161028204710-linux.tar.gz -c /usr/local

3.配置schema.xml

# cd /usr/local/mycat/conf
# vim schema.xml
<?xml version="1.0"?>
<!doctype mycat:schema system "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<!--schema 数据库-->
<schema name="testmycat" checksqlschema="false" sqlmaxlimit="100">
<!--table 表名-->
<table name="order" type="global" datanode="order" /> <table name="orderdetail" type="global" datanode="orderdetail" /> <table name="commodity" type="global" datanode="order" /> </schema>
<!---datanode数据节点,database对应各个datahost中的数据库名,datahost用于配置数据库服务器地址->
<datanode name="order" datahost="host2" database="jxtest" /> <datanode name="orderdetail" datahost="host1" database="usercenter" /> <datahost name="host1" 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.3.30:3306" user="root" password="gaia@works12345^&amp;*()" /> </datahost> <datahost name="host2" maxcon="1000" mincon="10" balance="0" writetype="0" dbtype="mysql" dbdriver="native" switchtype="1" slavethreshold="100"> <heartbeat>select user()</heartbeat> <writehost host="hostm2" url="192.168.3.62:4000" user="root" password="" /> </datahost> </mycat:schema>

mycat就是把跨库的数据库表,汇集到schema(新库)中,然后就可以join查询了

4.配置server.xml

# vim server.xml       #然后找到user节点配置
<user name="root">
        <property name="password">123456</property>
        <property name="schemas">testmycat</property>
    </user>
<!--user.name登陆用户名,password登录密码,schemas该用户可使用的数据库名,testmaycat对应schema.xml文件中配置的schema-->

5.启动mycat

# cd /usr/local/mycat/bin
# ./mycat start

6.查看mycat状态

# ./mycat status
mycat-server is running (29287).

7.使用mysql客户端连接mycat

数据库中间件mycat安装与使用

数据库中间件mycat安装与使用

然后就可以使用mysql语法查询了

8. 两个表的join

/*!mycat:catlet=io.mycat.catlets.sharejoin */
select
*
from t_order t
inner join order_detail td on t.orderid = td.orderid

数据库中间件mycat安装与使用

9.三个表的join

/*!mycat:catlet=io.mycat.catlets.sharejoin */
select
*
from t_order t
inner join order_detail td on t.orderid = td.orderid
inner join commodity c on td.commodityid = c.id

数据库中间件mycat安装与使用

可见,三个表的join,mycat是不支持的