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支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录 ...
随机推荐
- GOLANG 基本数据类型 整型
基本数据类型-整型 种类 有符号(负号) int8 int16 int32 int64 无符号(无符号) uint8 uint16 uint32 uint64 架构特定(取决于系统位 ...
- 在Ubuntu下使用 csapp.h 和 csapp.c
它山之石可以攻玉. 对于<深入理解计算机系统>这本神人写就的神书, 我等凡人就不评论什么啦. 这本书的 第二,三 部分, 真的真的对我理解操作系统有很大的帮助. (当然, 如果你不看第一部 ...
- 转 unity 优化
最近研究U3D开发,个人认为,精通一种新的技术,最快最好的方法就是看它的document,而且个人习惯不喜欢看中文的资料,原汁原味的东西是最正确的,一翻译过来很多东西就都不那么准确了.于是通读了uni ...
- Log4net(1):配置的简单说明
基础代码下载地址:https://github.com/zhangsai521314/StudyLog4net 1:按日期分隔日志 <configSections> <section ...
- 老王讲自制RPC框架.(二.动态代理)
(#简介) 什么是动态代理?动态代理是实现阶段不关心代理是谁,而在运行阶段才指定代理对象是哪一个,动态代理在做框架方面使用非常 广泛,比如spring的aop,其核心就是采用动态代理机制,下面让我们来 ...
- shell获得python的print的值
#!/usr/bin/env python print('aaa') #!/bin/bash var=`python testpython.py` (注意这个引号,是反引号,Tab上面的那个...) ...
- jquery.select2 模糊查询
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <link re ...
- nodejs&npm等概念梳理
nodejs node node版本 npm nvmw\gnvm等多版本管理 CommonJS.AMD.requirejs grunt.gulp package.json .npmrc npm\nod ...
- 【c#】对象转json字符串/字符串转Json对象
using Newtonsoft.Json; 一.Hashtable => Json Hashtable hash = new Hashtable(); hash.Add("key1& ...
- 3个sprint的团队贡献分
第一次冲刺贡献分 成员名字 贡献分 101丘娟 23 108周诗琦 26 107杨晓霞 24 124陈程 27 第二次冲刺贡献分 成员名字 贡献分 101丘娟 23 108周诗琦 27 ...