MySQL双主配置

      双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步。对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库数据一致。 这样做的好处多。 1. 可以做灾备,其中一个坏了可以切换到另一个。 2. 可以做负载均衡,可以将请求分摊到其中任何一台上,提高网站吞吐量。 对于异地热备,尤其适合灾备。废话不多说了。我们直接进入主题。 我们会主要介绍两部分内容:

主主同步配置

1.sql序列(服务器,产生序列号=id)

配置路径:/data/3306|3307/my.cnf

3306:配置

#________m-m m1 start________
auto_increment_increment        = 2
auto_increment_offset           = 1  这里设置为1,我们创建的id就是以1.3.5
log-slave-updates
log-bin
expire_logs_days = 7 

3307:配置

auto_increment_increment        = 2
auto_increment_offset           = 2 这里设置为2,我们创建的id就是以2.4.6
log-slave-updates
expire_logs_days = 7
log-bin = /data/3307/mysql-bin

主库插入数据

CREATE TABLE `test` (
  `id` bigint(12) NOT NULL auto_increment COMMENT '主键',
  `name` varchar(12) NOT NULL COMMENT '姓名',
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;   

创建完成,我们查看结果

 以后我们主库设置的字段为1.代表1.3.5

我们将数据导入到另一台主库3307

shell>mysqldump -uroot -p123456 -S /data/3307/mysql.sock -A -B --events -x --master-data=1|gzip >/opt/bak.sql.gz

将数据导入到3307

shell>gzip -d bak.sql.gz

shell>mysql -uroot -p123546 -S /data/3306/mysql.sock

导入完成设置mast.info

CHANGE MASTER TO

MASTER_HOST=’172.16.1.51′,

MASTER_PORT=3307

MASTER_USER=’rep’,

MASTER_PASSWORD=’123456′;

启动

start slave

show slave status;

就形成了双主模式

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
abcdocker运维博客
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论
网站搭建
加入我们
  • 站长QQ:381493251一键联系
  • abcdocker 微信公众号
    abcdocker QQ群