环境介绍:

CentOS-6.7  64位

Master1:Blog-MySQL-1  192.168.133.128

Master2:Blog-MySQL-2  192.168.133.132

MySQL 版本 5.5.33 二进制包安装

检查两台机器的实验环境是否符合要求。并保证可以正常登陆 mysql

以其中一台截图为例:

hostname

ifconfig eth0 | grep "inet addr" | awk "{print $2}" | cut -d: Cf2

mysql CV

cat /etc/redhat-release

uname -a

以上算是双主环境搭建的准备工作吧,接下来编辑 Master 1 的 my.cnf 文件

为了方便查阅还是跟之前一样,先过滤一下 # , $  开头的行吧

cat /etc/my.cnf | grep -v ^# | grep -v ^$ > tmp.log

cat tmp.log > /etc/my.cnf

Master 1 的  my.cnf 文件中的 [mysqld] 中添加以下字段

vim /etc/my.cnf

server-id  = 1

log-bin = mysql-bin

auto_increment_increment = 2

auto_increment_offset     = 1

log-slave-updates

expire_logs_days = 7

skip-name-resolve

lower_case_table_names=1

以上参数

auto_increment_increment = 2           #自增ID的间隔,如 1 3 5 间隔为 2

auto_increment_offset     = 1                #ID的初始位置

修改配置文件需要重启 Master 1 的数据库

/etc/init.d/mysqld restart

登录 Master 1 的 mysql

mysql -uroot -p123456

在 Master 1 上创建同步到 Master 2 上的账号

grant replication slave on *.* to yuci@"%" identified by "123456";

flush privileges;

检查刚才刚才的操作

select user,host from mysql.user;

show grants for yuci@"%";

继续操作 Master1 锁表,查看 binlog 文件及 pos 位置节点

flush table with read lock;

show master status;

新打开一个窗口,将 Master 1 的数据库文件导出,通过 scp 命令传递给 Master 2 上

mysqldump -uroot -p123456 --events -A -B > /root/test.sql

scp test.sqlroot@192.168.133.132:/root

yes

解表 Master 1

unlock tables;

登陆到 Master 2 上,现将刚才的数据库 test.sql 导入

mysql -uroot -p123456 < test.sql

编辑 Master 2 的 my.cnf 文件,跟上面的操作一样,只需要注意的是 server-id 和 offset

cat /etc/my.cnf | grep -v ^# | grep -v ^$ > tmp.log

cat tmp.log > /etc/my.cnf

server-id       = 2

log-bin = mysql-bin

auto_increment_increment = 2

auto_increment_offset    = 2

log-slave-updates

expire_logs_days = 7

skip-name-resolve

lower_case_table_names=1

修改配置文件后别忘重启 mysql

/etc/init.d/mysqld restart

登陆 Master 2 的 mysql 数据库

mysql -uroot Cp123456

CHANGE MASTER TO

MASTER_HOST="192.168.133.128",

MASTER_PORT=3306,

MASTER_USER="yuci",

MASTER_PASSWORD="123456",

MASTER_LOG_FILE="mysql-bin.000001",

MASTER_LOG_POS=332;

查看两个IO SQL连个线程是否连接成功

start slave;

show slave status\G

在 Master 2 上创建一个用于同步到 Master 1 的账号,刷新并检查

其实就是两台 mysql 分别创建两个账号,账号不能重复

grant replication slave on *.* to yuci1@"%" identified by "123456";

flush privileges;

select user,host from mysql.user;

show grants foryuci@"%";

查看 Master 2 的 binlog 文件和 pos 号

show master status;

返回 Master 1 上,设置账号同步参数

输入时注意每个参数,别把它和之前的账号,用户名,密码搞反了

CHANGE MASTER TO

MASTER_HOST="192.168.133.132",

MASTER_PORT=3306,

MASTER_USER="yuci1",

MASTER_PASSWORD="123456",

MASTER_LOG_FILE="mysql-bin.000002",

MASTER_LOG_POS=333;

在 Master 1 上启动 slave,并查看

start slave;

show slave status\G

到此为止,双主的环境就算是搭建完成了,接下来测试一下。

先在 Master 1 上创建数据库 yucitest1

create database yucitest1;

show databases;

在 Master 2 上查看所有数据库,可以看到刚才创建的 yucitest1 ,将其删除,创建 yucitest2 数据库

show databases;

drop database yucitest1;

create database yucitest2;

返回 Master 1 看到 yucitest2 ,环境搭建成功

show databases;

mysql主主同步稳定吗_MySQL主主同步相关推荐

  1. mysql 5.6 双向互备_mysql双主互备

    5.则配置同步信息. change master to master_host='192.168.1.102',master_port=3306,master_user='replication',m ...

  2. mysql双主可以同时写数据_Mysql双主操作

    在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果是双主或者多主,就会增加mysql入 ...

  3. mysql id自动递增两个_MySQL双主一致性架构优化

    转自: MySQL双主一致性架构优化 - osc_avwazwuz的个人空间 - OSCHINA​my.oschina.net 一.双主保证高可用 MySQL数据库集群常使用一主多从,主从同步,读写分 ...

  4. mysql的主键有什么作用_mysql设置主键有什么用

    mysql设置主键的作用是:1.唯一地标识表中的每一行,通过它可强制表的实体完整性:2.主要是用于其他表的外键关联,以及本记录的修改与删除. [相关学习推荐:mysql教程] mysql设置主键的作用 ...

  5. mysql+keepalived必须要lvs吗_MySQL 双主热备 + LVS + Keepalived 高可用操作记录

    MySQL复制能够保证数据的冗余的同时可以做读写分离来分担系统压力,如果是主主复制还可以很好的避免主节点的单点故障.然而MySQL主主复制存在一些问题无法满足我们的实际需要:未提供统一访问入口来实现负 ...

  6. mysql+keepalived必须要lvs吗_Mysql双主热备+LVS+Keepalived高可用操作记录

    MySQL复制能够保证数据的冗余的同时可以做读写分离来分担系统压力,如果是主主复制还可以很好的避免主节点的单点故障.然而MySQL主主复制存在一些问题无法满足我们的实际需要:未提供统一访问入口来实现负 ...

  7. mysql主键可以重复吗_mysql 处理主键重复

    select * from stock; -- 1.批量插入,忽略主键重复的数据 insert IGNORE into insert IGNORE into `stock` (`id`,`name`, ...

  8. MySQL跨机房集群方案_Mysql跨机房同步方案

    随着用户量的不断累积,Mysql从单实例单节点发展到多实例多节点的主备,再到一个机房几十台Myql实例,但是现在,一个机房也开始慢慢无法承受庞大的数据吞吐,多机房的理念开始构建. 假设现有两个机房,需 ...

  9. mysql数据库主从同步的原理_mysql数据库主从同步复制原理

    MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能.更高可靠性要求的场合.与之对应的是另一个同步技术是MySQ ...

最新文章

  1. 设置释放COCOS2D-X 的启动流程
  2. 在ListCtrl控件中插入图标
  3. 【转】webshell检测——使用auditd进行system调用审计
  4. 《CCNA ICND2(200-101)认证考试指南(第4版)》——第1章定义生成树协议
  5. How does SAP OData framework interpret $expand=Notes
  6. 我们到底为什么要用 IoC 和 AOP
  7. 【R爬虫-1】BBC Learning English
  8. 战胜25名医生:AI真能成为医疗界的“擂主”?
  9. 计算机相关国内外文献,计算机外文文献
  10. 米家有品这么多好东西哪些值得我们关注
  11. .net 3des 解密
  12. 学计算机的参加数学建模有什么用吗,数学建模是什么?对于编程来说有什么意义?...
  13. 离群值是什么意思_离群值!离群值?离群值!
  14. WPF 控件 (二、按钮)
  15. 高通平台GPIO模拟PWM控制背光
  16. MySQL数据库版本
  17. 10 06 27 无用功
  18. 【金猿产品展】亚信科技“数据探索分析平台”——深挖数据价值,助客户高效管理和经营生产...
  19. Zcash核心:零知识证明
  20. 笔记本桌面上计算机图标没有了6,笔记本电脑桌面显示没了怎么办呢

热门文章

  1. http://www.blogjava.net/heyang/archive/2010/12/02/
  2. 【2012百度之星资格赛】F:百科蝌蚪团
  3. 不用加号实现两整数相加
  4. 多益网络 2016 春季实习校招笔试回顾(C++游戏后台)
  5. fdisk -l查看硬盘分区信息及硬盘分区介绍
  6. windows 运行banana
  7. 快速排序与与冒泡排序效率对比
  8. UVA 1324 The Largest Clique 最大团(强连通分量,变形)
  9. uva562Dividing Coins
  10. linux之vi,vim命令