Mycat中间件对mysql数据表进行水平分片分库处理配置

mycat服务器:192.168.1.10

mysql服务器:192.168.1.132

1.在mysql服务器中新建3个结构相同的数据库shop_cart1,shop_cart2,shop_cart3用于分库备用;

2.mycat服务器中配置如下:

①schema.xml

图中方框shop_cart指要对主库中进行分库处理的表名(真实表名),database="shop_cart1"等指要连接的数据库名(第一步新建的),rule规则填写下面配置的rule规则名称。

②rule.xml

一个tableRule代表一个规则,这里采用sharding-by-murmur以hash进行计算,column表示以那个字段进行hash计算

③server.xml

方框中默认是2,改为0表示使用本地配置文件sequence_conf.properties。

④sequence_conf.properties文件中, 新增以下四行:

CART.HISIDS=

CART.MINID=1001  最小id

CART.MAXID=2000  最大id

CART.CURID=1000  当前id

该文件主要是在新增数据时,不用指定新增id具体值(使用next value for MYCATSQE_CART),就会自动添加id。其中CART.是自己命名的,可随意,但是要与MYCATSQE_CART中的CART保持一致。

3.检测效果

在主服务器中执行 mysql -uroot -p123456 -h192.168.1.x  -P8066链接mycat,选择对应数据库和表插入数据:

insert into shop_cart (cartid,productid,productnum,price,userid,createtime) values (next value for MYCATSEQ_CART,1,12,123,100,123123),(next value for MYCATSEQ_CART,1,12,123,200,123123),(next value for MYCATSEQ_CART,1,12,123,300,123123),(next value for MYCATSEQ_CART,1,12,123,300,123123);

然后,执行select * from shop_cart;发现新增了三条数据(实际上这三条数据分别分布在不同的数据库中,其中的增查操作mycat已经代理处理好了)

再进入实际mysql服务器,分别查看shop_cart1,shop_cart2,shop_cart3数据库查看,新增了刚才插入了新数据。

(注:在实际项目中数据库连接配置要使用mycat的host(192.168.1.10)和账户密码(root,123456),因为实际项目当中mycat作为项目和mysql链接的中间件!)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值