视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
cobar配置安装_MySQL
2020-11-09 18:04:26 责编:小采
文档


bitsCN.com

1、下载cobar http://code.alibabatech.com/wiki/display/cobar/release

2、进入cobar-server-1.2.4目录,可以看到Cobar的主要目录如下:

bin #包含Cobar的启动、重启、停止等脚本文件

conf #包含Cobar所有配置文件

lib #包含Cobar及其依赖的jar文件

logs #包含Cobar所有日志文件

3、Cobar的所有配置文件全部放在conf目录中,进入conf目录,可以看到:

server.xml #Cobar系统、用户、集群等相关配置

schema.xml #schema,dataNode,dataSource相关配置

rule.xml #分布式规则定义

log4j.xml #日志相关配置

4、mysql中数据准备

配置两台机器的mysql,ip地址分别为:192.168.1.110 、 192.168.1.113 端口为3306 用户名 root 密码为空。我们需要在 192.168.1.110上创建database:dbtest1,dbtest2,dbtest3;table:tb1(在dbtest1上),tb2(dbtest2、dbtest3上)。在192.168.1.113上创建database:dbtest31,dbtest32;table:tb1(dbtest31上),tb2(dbtest32上)

数据库创建脚本:

#########################################192.168.1.110

#创建dbtest1

drop database if exists dbtest1;

create database dbtest1;

use dbtest1;

#在dbtest1上创建tb1

create table tb1(

id int not null,

gmt datetime);

#创建dbtest2

drop database if exists dbtest2;

create database dbtest2;

use dbtest2;

#在dbtest2上创建tb2

create table tb2(

id int not null,

val varchar(256));

#创建dbtest3

drop database if exists dbtest3;

create database dbtest3;

use dbtest3;

#在dbtest3上创建tb2

create table tb2(

id int not null,

val varchar(256));

#########################################192.168.1.113

#创建dbtest31

drop database if exists dbtest1;

create database dbtest1;

use dbtest31;

#在dbtest1上创建tb1

create table tb1(

id int not null,

gmt datetime);

#创建dbtest32

drop database if exists dbtest2;

create database dbtest2;

use dbtest32;

#在dbtest2上创建tb2

create table tb2(

id int not null,

val varchar(256));

5、配置schema.xml

参考:http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=7671478

请确保机器上设置了JAVA环境变量JAVA_HOME

-->

dsTest[0]

ds_single_slave-->

ds_single_slave2-->

256-->

select user()-->

dsTest[1]

dsTest[2]

dsTest[3]

dsTest[4]

192.168.1.110:3306/dbtest1

192.168.1.110:3306/dbtest2

192.168.1.110:3306/dbtest3

192.168.1.113:3306/dbtest31

192.168.1.113:3306/dbtest32

root

STRICT_TRANS_TABLES

此处要注意开启远程连接root用户的权限

grant all privileges on *.* to root#'%'

6、配置rule.xml

tableRule

tableRule主要作用是用来判断SQL语句路由到哪些datanode执行,Cobar是通过在SQL中提取一个或多个字段的值,并根据这些字段的值来决定路由到哪个库执行。因此,tableRule定义两个要素:

1)按表中的哪个字段路由?------下文中我们称此字段为路由字段

2)有了字段值,如何路由?------即路由函数

id

function

参考:http://code.alibabatech.com/wiki/pages/viewpage.action?pageId=7671871

4

256

:8

2

512

7、配置server.xml

System

8066

9066

16

4

4

4

8

8

_HEARTBEAT_USER_

_HEARTBEAT_PASS_

User

test

db_single,db_shard

 root

-->

 

 

 

 root

-->

 

-->

Cluster

在实际应用中,经常需要部署一个Cobar集群,我们称集群中的一台Cobar为一个Cobar节点。

192.168.1.110

1

192.168.1.113

2

cobar1,cobar2

用户只需登录Cobar的服务端口(8066),运行Cobar自带的查询命令show cobar_cluster,便可查询集群中所有节点的运行情况以及权重,并根据查询结果做负载均衡。

mysql -h192.168.1.110 -utest -ptest -P8066

mysql>show cobar_cluster; #查询cluster配置中正常的Cobar节点

+---------------+--------+

| HOST | WEIGHT |

+---------------+--------+

| 192.168.1.110 | 1 |

| 192.168.1.113 | 2 |

+---------------+--------+

注意:

1)如果需要配置Cobar集群,当前Cobar自身也需要作为一个节点配置在cluster中,Cobar不会默认向自己发心跳;

2)show cobar_cluster只显示cluster配置中得正常Cobar节点,如果节点异常(如超时或错误),结果中便不会包含此节点。

8、访问方式

由于Cobar遵循MySQL协议,访问Cobar的方式与访问MySQL数据库完全相同。

支持MySQL命令行方式访问

#命令行

mysql -h192.168.1.110 -utest -ptest -P8066 -Ddb_shard

bitsCN.com

下载本文
显示全文