MySQL5. 主主复制
环境如下:
CentOS6.4_64
MySQL5.
master1:192.168.10.11
master2:192.168.10.12
1.1 配置 master1
a. 修改 my.cnf 文件,增加如下内容:
server-id= #数据库 ID 号
log-bin=mysql-bin #启用二进制日志;
binlog-do-db=baba1 #需要同步的数据库名,这里同步 baba1、baba2 两数据库
binlog-do-db=baba2
binlog-ignore-db=mysql #不同步的数据库名,如果不设置可以将其注释掉
log-bin=/var/log/mysqlbin/bin_log #设定生成的 log 文件名,如果没有/var/log/mysqlbin 目录,
则创建,并执行 chown -R mysql.mysql /var/log/mysqlbin
log-slave-updates #把从库的写操作,记录到 binlog 中
expire_logs_days= #日志文件过期天数,默认是 ,表示不过期
auto-increment-increment= #设定为主服务器的数量,防止 auto_increment 字段重复
auto-increment-offset= #自增长字段的初始值,在多台 master 环境下,不会出现自增
长 ID 重复
b. 添加一个复制帐号 backup
[root@localhost ~]# mysql -uroot -p123456
mysql>grant replication slave on *.* to backup@'%' identified by '';
mysql>flush privileges;
c. 在 master2 上测试是否能连接到 master1,记得把 添加到 iptables 里
[root@localhost ~]# mysql -ubackup -h 192.168.10.11 -p123456
1.2 配置 master2
a. 修改 my.cnf 文件,增加如下内容:
server-id= #数据库 ID 号
log-bin=mysql-bin #启用二进制日志;
binlog-do-db=baba1 #需要同步的数据库名,这里同步 baba1、baba2 两数据库
binlog-do-db=baba2
binlog-ignore-db=mysql #不同步的数据库名,如果不设置可以将其注释掉
log-bin=/var/log/mysqlbin/bin_log #设定生成的 log 文件名,如果没有/var/log/mysqlbin 目录,
巴巴网(www.baba.io)为您提供图书、文档、源码、工具等资源的下载,是您最好的资源下载网。
本系列文档,由巴巴网(www.baba.io)独家发行,如需最新版本,请访问 www.baba.io
则创建,并执行 chown -R mysql.mysql /var/log/mysqlbin
log-slave-updates #把从库的写操作,记录到 binlog 中
expire_logs_days= #日志文件过期天数,默认是 ,表示不过期
auto-increment-increment= #设定为主服务器的数量,防止 auto_increment 字段重复
auto-increment-offset= #自增长字段的初始值,在多台 master 环境下,不会出现自增
长 ID 重复
b. 添加一个复制帐号 backup
[root@localhost ~]# mysql -uroot -p123456
mysql>grant replication slave on *.* to backup@'%' identified by '';
mysql>flush privileges;
c. 在 Master1 上测试是否能连接到 Master2,记得把 添加到 iptables 里
[root@localhost ~]# mysql -ubackup -h 192.168.10.12 -p123456
1.3 设置 master-master 同步
a. 重启 master1、master2 上的 MySQL
[root@localhost ~]# service mysql restart
b. 查看 master1 的状态
[root@localhost ~]# mysql -uroot -p123456
mysql> show master status;
+----------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+----------------+----------+--------------+------------------+-------------------+
| bin_log. | | baba1,baba2 | mysql | |
+----------------+----------+--------------+------------------+-------------------+
row in set (0.00 sec)
c. 查看 master2 的状态
[root@localhost ~]# mysql -uroot -p123456
mysql> show master status;
+----------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+----------------+----------+--------------+------------------+-------------------+
| bin_log. | | baba1,baba2 | mysql | |
+----------------+----------+--------------+------------------+-------------------+
row in set (0.00 sec)
c. 设置 master1 从 master2 同步数据
mysql>CHANGE MASTER TO MASTER_HOST='192.168.10.12',MASTER_PORT=,
巴巴网(www.baba.io)为您提供图书、文档、源码、工具等资源的下载,是您最好的资源下载网。
本系列文档,由巴巴网(www.baba.io)独家发行,如需最新版本,请访问 www.baba.io
MASTER_USER='backup',MASTER_PASSWORD='',MASTER_LOG_FILE='bin_log.00
',MASTER_LOG_POS=120;
mysql> start slave;
#查询数据库的 slave 状态
mysql> show slave status\G;
#如果下面两个参数都是 Yes,则说明 master1 配置成功
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
d. 设置 master2 从 master1 同步数据
mysql>CHANGE MASTER TO MASTER_HOST='192.168.10.11',MASTER_PORT=,
MASTER_USER='backup',MASTER_PASSWORD='',MASTER_LOG_FILE='bin_log.00
',MASTER_LOG_POS=120;
mysql> start slave;
#查询数据库的 slave 状态
mysql> show slave status\G;
#如果下面两个参数都是 Yes,则说明 master1 配置成功
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
1.4 测试主主复制
a. 在 master1 上,执行如下操作:
[root@localhost ~]# mysql -uroot -p123456
mysql> create database baba1;
mysql> use baba1;
mysql> create table test(id int AUTO_INCREMENT,name varchar(),PRIMARY KEY (`id`));
mysql> insert into test(name)values('aaa');
mysql> insert into test(name)values('bbb');
mysql> insert into test(name)values('ccc');
mysql> select * from test;
+----+------+
| id | name |
+----+------+
| | aaa |
| | bbb |
| | ccc |
+----+------+
rows in set (0.00 sec)
b. 在 master2 上,执行如下操作:
巴巴网(www.baba.io)为您提供图书、文档、源码、工具等资源的下载,是您最好的资源下载网。
本系列文档,由巴巴网(www.baba.io)独家发行,如需最新版本,请访问 www.baba.io
[root@localhost ~]# mysql -uroot -p123456
mysql> use baba1;
mysql> select * from test;
+----+------+
| id | name |
+----+------+
| | aaa |
| | bbb |
| | ccc |
+----+------+
rows in set (0.00 sec)
mysql> insert into test(name)values('ddd');
mysql> insert into test(name)values('eee');
mysql> insert into test(name)values('fff');
mysql> select * from test;
+----+------+
| id | name |
+----+------+
| | aaa |
| | bbb |
| | ccc |
| | ddd |
| | eee |
| | fff |
+----+------+
rows in set (0.00 sec)

MySQL主主复制的更多相关文章

  1. mysql+mycat搭建稳定高可用集群,负载均衡,主备复制,读写分离

    数据库性能优化普遍采用集群方式,oracle集群软硬件投入昂贵,今天花了一天时间搭建基于mysql的集群环境. 主要思路 简单说,实现mysql主备复制-->利用mycat实现负载均衡. 比较了 ...

  2. mysql数据库主从及主主复制配置演示

    实验系统:CentOS 6.6_x86_64 实验前提:提前准备好编译环境,防火墙和selinux都关闭 实验说明:本实验共有2台主机,IP分配如拓扑 实验软件:mariadb-10.0.20 实验拓 ...

  3. MySQL复制环境(主从/主主)部署总结性梳理

    Mysql复制概念说明Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves) ...

  4. MySQL数据的主从复制、半同步复制和主主复制详解

    一.MySQL复制概述 ⑴.MySQL数据的复制的基本介绍 目前MySQL数据库已经占去数据库市场上很大的份额,其一是由于MySQL数据的开源性和高性能,当然还有重要的一条就是免费~不过不知道还能免费 ...

  5. MySQL主主复制3

    一.创建并授权用户 在每一台(主)服务器上创建一个用户,并为之授权,使它们可以互相访问彼此的数据库 在Server-1上: 创建一个充许Server-2来访问的用户server2,密码为:server ...

  6. 【MySQL】主备复制

    复制对于mysql的重要性不言而喻,mysql集群的负载均衡,读写分离和高可用都是基于复制实现.下文主要从4个方面展开,mysql的异步复制,半同步复制和并行复制,最后会简单聊下第三方复制工具.由于生 ...

  7. mysql主主复制(双主复制)配置步骤

    以前我们介绍的都是主从复制,这里给各位介绍一个双主复制了,下面都希望两个主服务器数据自动复制的话可参考一下此文章.   MySQL主主复制结构区别于主从复制结构.在主主复制结构中,两台服务器的任何一台 ...

  8. mysql主从复制 主主复制 读写分离

    首先是mysql的主从复制很简单 主主复制也就是互相主从最麻烦的最难的就是日志恢复,增量恢复什么的比较复杂 首先如果你不会安装mysql版本最好一样,或者往上的版本,因为mysql是向下兼容 请注意不 ...

  9. MYSQL的主从和主主复制模式

    一.复制介绍 MySQL支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录 ...

随机推荐

  1. 关于mysql登录异常处理方法 - mysql ERROR 1045 (28000)

    今天在开发过程中遇到了一个很令人头痛的问题?? 使用 百度经验的步骤 [http://jingyan.baidu.com/article/495ba841ef412d38b30edeb2.html]修 ...

  2. SQL-Server使用点滴(一)

    前言 SQL的语法比较简单,学起来相比界面UI控制要简单得多,但是SQL在企业级应用中又是如此的重要,以至于很多开发人员都把重点放在SQL上. SQL并没有面向对象的概念,最复杂的设计也不过是表值函数 ...

  3. 前端中sprite.png的实现

    通过background-position来控制X轴和Y轴,从而实现显示sprite.png中想要的ico或图案. 如下图所示:

  4. select元素中设置padding效果

    更新2016-9-17:这个bug是在mac os上的发生,在window系统中不存在这个问题! 给select元素增加:padding-left:20px;但是未生效,如下图所示: 在select上 ...

  5. 无法启动调试。未安装Silverlight Developer运行时。最新运行时可以从以下地址下载: http://go.microsoft.com/fwlink/?LinkId=146060.

    无法启动调试.未安装Silverlight Developer运行时.最新运行时可以从以下地址下载: http://go.microsoft.com/fwlink/?LinkId=146060. 解决 ...

  6. [Android] Google IAP unmaneged items服务器校验

    android IAP unmaneged items 服务器校验 当成功IAP以后, 会在google服务器记录此次购买的状态. 可以通过Google Play Android Developer ...

  7. WPF界面布局——Canvas

    Canvas用于定义一个区域,称为画布,用于完全控制每个元素的精确位置.它是布局控件中最为简单的一种,直接将元素放在指定位置,使用Canvas时,必须指定一个子元素的位置(相对于Canvas),否则所 ...

  8. [Jenkins] Jenkins配置自动构建时间代表意义

  9. PHP绘图

    创建图像的一般流程1.设定标头,告诉浏览器你要生成的绘图类型.2.创建一个图像区域,以后的操作都将基于此图像区域.3.在空白图像区域绘制填充背景.4.在背景上绘制图形轮廓输入文本.5.输出最终图形.6 ...

  10. VS后台程序无法调用App_Code里的公共类解决方案

    在Web应用程序中不能通过右键项目-〉”添加“-〉”添加ASP.NET文件夹“方式添加 .因为Web应用程序中App_Code就不存在 .不过可以通过手动的方式创建,添加一个文件夹命名为App_Cod ...