ITPub博客

首页 > Linux操作系统 > Linux操作系统 > cobar续5-cobar集群(mysql主主)

cobar续5-cobar集群(mysql主主)

原创 Linux操作系统 作者:a3zi 时间:2015-01-19 15:15:06 0 删除 编辑

一般在现实中,用cobar是多台集群的,mysql用的是多实例,并且是主主同步来达到数据的高可用。下面是我画的一个简单草图,很形像地说明了之间的关系。

其中,我用了2台服务器A和B来做例子,都安装了cobar和mysql来实现集群。mysql用的是多实例,mysql实例1和mysql实例3是主主同步;mysql实例2和mysql实例4是主主同步。

mysql多实例配置很简单,可以在网上找到很多,我这就不再啰嗦了。先看一下,我的mysql配置文件:

[mysqld_multi]

mysqld     = /usr/bin/mysqld_safe

mysqladmin = /usr/bin/mysqladmin

user = test

password = test123

# The MySQL server

[mysqld1]

port            = 3306

socket          = /tmp/mysql.sock

......

[mysqld2]

socket     = /tmp/mysql.sock2

port       = 3307

pid-file   = /var/lib/mysql2/hostname.pid2

datadir    = /var/lib/mysql2

user            = mysql

server_id       =11

连接多实例中的某个实例的话,要加-P和-S

比如:mysql -uroot -p  -P3307 -S /tmp/mysql.sock2

mysql的主主同步设置,也很简单,这里也不再介绍了,需要注意的是:auto-increment-increment和auto-increment-offset这两个参数,防止主键ID有重复的出现。

auto-increment-increment = 2     自增值变化值为2

auto-increment-offset = 1 或 2    自增值起始值为1或2

每台机器中的cobar的安装和配置,可以借鉴我的前几篇文章,cobar的集群配置是需要在server.xml中设置的:

vi server.xml

 

 

2

    4

    4

 

 

  <!-- 系统参数定义,服务端口、管理端口,处理器个数、线程池等。 -->

  <!--

 

    8066

    9066

    16

    4

    4

    4

    8

    8

    _HEARTBEAT_USER_

    _HEARTBEAT_PASS_

 

  -->

  <!-- 用户访问定义,用户名、密码、schema等信息。 -->

 

    test

    test

 

  <!--

 

   

 

  -->

 

  <!-- 集群列表定义,指定集群节点的主机和权重,用于集群间的心跳和客户端负载均衡。 -->

 

 

   

      172.16.88.130

      1

   

   

      172.16.88.131

      1

   

 

  

  

  <!-- 隔离区定义,可以限定某个主机上只允许某个用户登录。 -->

  <!--

 

   

      test

   

 

  -->

 


还要在schema.xml中设置一下和

分库和分表是在schema.xml和rule.xml中设置的,实际中要用到的表是很多的,所以像下面的语句会出现很多很多行,当然引号内的参数是不同的。

......

其中需要注意的是:rule中的参数是在rule.xml中定义过的,否则会报错。当然,rule.xml中也要定义很多个不同表的规则。

 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29806344/viewspace-1406907/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-08-15

  • 博文量
    45
  • 访问量
    228900