MySQL主主复制
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主主复制的更多相关文章
- mysql+mycat搭建稳定高可用集群,负载均衡,主备复制,读写分离
数据库性能优化普遍采用集群方式,oracle集群软硬件投入昂贵,今天花了一天时间搭建基于mysql的集群环境. 主要思路 简单说,实现mysql主备复制-->利用mycat实现负载均衡. 比较了 ...
- mysql数据库主从及主主复制配置演示
实验系统:CentOS 6.6_x86_64 实验前提:提前准备好编译环境,防火墙和selinux都关闭 实验说明:本实验共有2台主机,IP分配如拓扑 实验软件:mariadb-10.0.20 实验拓 ...
- MySQL复制环境(主从/主主)部署总结性梳理
Mysql复制概念说明Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves) ...
- MySQL数据的主从复制、半同步复制和主主复制详解
一.MySQL复制概述 ⑴.MySQL数据的复制的基本介绍 目前MySQL数据库已经占去数据库市场上很大的份额,其一是由于MySQL数据的开源性和高性能,当然还有重要的一条就是免费~不过不知道还能免费 ...
- MySQL主主复制3
一.创建并授权用户 在每一台(主)服务器上创建一个用户,并为之授权,使它们可以互相访问彼此的数据库 在Server-1上: 创建一个充许Server-2来访问的用户server2,密码为:server ...
- 【MySQL】主备复制
复制对于mysql的重要性不言而喻,mysql集群的负载均衡,读写分离和高可用都是基于复制实现.下文主要从4个方面展开,mysql的异步复制,半同步复制和并行复制,最后会简单聊下第三方复制工具.由于生 ...
- mysql主主复制(双主复制)配置步骤
以前我们介绍的都是主从复制,这里给各位介绍一个双主复制了,下面都希望两个主服务器数据自动复制的话可参考一下此文章. MySQL主主复制结构区别于主从复制结构.在主主复制结构中,两台服务器的任何一台 ...
- mysql主从复制 主主复制 读写分离
首先是mysql的主从复制很简单 主主复制也就是互相主从最麻烦的最难的就是日志恢复,增量恢复什么的比较复杂 首先如果你不会安装mysql版本最好一样,或者往上的版本,因为mysql是向下兼容 请注意不 ...
- MYSQL的主从和主主复制模式
一.复制介绍 MySQL支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录 ...
随机推荐
- Ubuntu-server14.04搭建LAMP环境
转自:http://www.cnblogs.com/myzhibie/p/4330327.html 对于很多PHP初学开发者来讲,搭建一个可用于生产的LAMP环境是一件费时费力的事情,本文以 ubun ...
- boldSystemFontOfSize 和 systemFontOfSize 的区别
使用 UIFont 的下列方法: + systemFontOfSize + boldSystemFontOfSize + italicSystemFontOfSize p.p1 { margin: 0 ...
- mysql中更新或者删除语句中子语句不能操作同一个表You can't specify target table 'test' for update in FROM clause
问题描述:有个数据表test,有个字段value,如下 mysql> select * from test;+----+------------------------------------+ ...
- MACS2 安装与使用
1)下载MACS2 下载网址: https://pypi.python.org/pypi/MACS2 (有下载网址和安装.使用示例) $ python setup.py install出现如下问题 ...
- caffe安装:ubuntu16.04 + opencv2.4 + python 2.7+ CUDA 8.0 RC + CuDNN 5.0
官方教程:http://caffe.berkeleyvision.org/install_apt.html 主要参考教程: https://github.com/BVLC/caffe/wiki/Ubu ...
- 【BZOJ】3436: 小K的农场
3436: 小K的农场 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 938 Solved: 417[Submit][Status][Discuss ...
- 转:ProgressMonitorDialog
http://stackoverflow.com/questions/12986912/using-progressmonitordialog-in-eclipse-4-properly public ...
- Memcached的使用
为什么要使用Memcached? 1)高并发访问数据库的痛:死锁 2)磁盘IO之痛 3)读写性能完美 4)超简单的集群搭建Cluster 5)开源 6)性能最佳 7)丰富的成功案例 Memcached ...
- java:经典消费生成者
产品类: public class Info { private String title = "生产"; private String content = "生产罐头& ...
- Sql获取周、月、年的首尾时间。
,) -- 本周周一 ,,,)) -- 本周周末 ,) -- 本月月初 ,,,)) -- 本月月末 ,,) -- 上月月初 ,,)) -- 上月月末 ,) -- 本年年初 ,,,)) -- 本年年末 ...