首先看节点规划:ip:192.168.0.99host:mgs02role:cobar&..
首先看节点规划:
ip:192.168.0.99 host:mgs02 role:cobar
ip:192.168.0.101 host:mysql01 role:mysql-master1
ip:192.168.0.102 host:mysql02 role:mysql-slave1
ip:192.168.0.103 host:mysql03 role:mysql-master2
ip:192.168.0.104 host:mysql04 role:mysql-slave2
数据库分片规划:
lens_conf.* 不分片,数据分布在101和102这个单片上
lens_mobapp_trace.test表 分片,101、102为一个片,103、104为一个片
lens_mobapp_data.emp表 分片,101、102为一个片,103、104为一个片
lens_mobapp_data.loc表 分片,101、102为一个片,103、104为一个片
1、cobar不支持ha下的读写分离,如果使用了ha,每个分片内的节点都可能要有数据写入,因此,应该配置双向同步,首先配置mysql-master1和mysql-slave1、mysql-master2和mysql-slave2的双向同步,这里不再详述,与单向同步的区别就是需要开启log_slave_updates参数,然后彼此设置对方为自己的主库。
接着需要在后端的mysql要做分片的表所在库中创建一张心跳表,并插入10条数据(针对多个cobar节点,避免单条数据的锁争用;如果只有一个cobar节点的话可以只插入一条数据,这里插入10条)
## 需要在lens_conf、lens_mobapp_data、lens_mobapp_trace三个schema中执行下面语句,可以只在## 每个分片的某一个节点上执行,另一个节点就会同步执行。create table xdual(id int not null,gmt datetime,primary key (id));insert into xdual values(1,now());insert into xdual values(2,now());insert into xdual values(3,now());insert into xdual values(4,now());insert into xdual values(5,now());insert into xdual values(6,now());insert into xdual values(7,now());insert into xdual values(8,now());insert into xdual values(9,now());insert into xdual values(10,now());
2、安装cobar
## 解压[root@mgs02 opt]# tar xf cobar-server-1.2.7.tar.gz -c /opt/[root@mgs02 opt]# ls cobar-server-1.2.7/bin conf lib logs 3、配置cobar
首先配置schema.xml
[root@mgs02 opt]# vim cobar-server-1.2.7/conf/schema.xml nbsp;cobar:schema system schema.dtd>
ds_master_shared01$0-2 ds_slave_shared01$0-2 256 update xdual set gmt=now() where id=${(1,10)} ds_master_shared02$0-1 ds_slave_shared02$0-1 256 update xdual set gmt=now() where id=${(1,10)} 192.168.0.101:3306/lens_conf 192.168.0.101:3306/lens_mobapp_data 192.168.0.101:3306/lens_mobapp_trace lens 123456 strict_trans_tables 192.168.0.102:3306/lens_conf 192.168.0.102:3306/lens_mobapp_data 192.168.0.102:3306/lens_mobapp_trace lens 123456 strict_trans_tables 192.168.0.103:3306/lens_mobapp_data 192.168.0.103:3306/lens_mobapp_trace lens 123456 strict_trans_tables 192.168.0.104:3306/lens_mobapp_data 192.168.0.104:3306/lens_mobapp_trace lens 123456 strict_trans_tables