准备环境:服务器操作系统为RHEL6.4 x86_64,为最小化安装。主机A和主机B均关闭防火墙和SELINUX ,IP地址分别为192.168.131.129和192.168.131.130,MySQL版本为5.6.26,为通用二进制包。

安装MySQL

1.主机A操作

# tar xf mysql-5.6.26-linux-glibc2.5-x86_64.tar.gz

# mv mysql-5.6.26-linux-glibc2.5-x86_64 /usr/local/mysql

# useradd -M -s /sbin/nologin mysql

# chown -R root:root /usr/local/mysql/*

# chown -R mysql:mysql /usr/local/mysql/data/

# yum -y install libaio

# cd /usr/local/mysql/scripts/

# ./mysql_install_db --datadir=/usr/local/mysql/data/ --user=mysql --basedir=/usr/local/mysql/

# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

# echo 'export PATH=$PATH:/usr/local/mysql/bin' >>/etc/profile

# source /etc/profile

# vim /etc/my.cnf

[mysqld]

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

user=mysql

symbolic-links=0

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

# service mysqld start

#chkconfig mysqld on

# ss -tunlp | grep 3306

# mysqladmin -uroot password '123456' #设置数据库密码
2.主机B操作(同上)

二、配置双主

1、主机A操作

# vim /etc/my.cnf

server-id=20

log-bin=mysql-bin

log-bin-index=mysql-bin.index

replicate-ignore-db=test

binlog-ignore-db=mysql

binlog-ignore-db=information_schema

auto-increment-increment=2

auto-increment-offset=1

# service mysqld restart

# mysql -uroot -p123456

mysql> flush tables with read lock;
再打开一个远程终端窗口,执行以下操作

# mysqldump -uroot -p123456 -B test > test.sql
返回之前的终端窗口,做以下操作

mysql> unlock tables;

mysql> grant replication slave on *.* to 'wdd'@'192.168.131.130' identified by '123456';

mysql> flush privileges;

# scp test.sql 192.168.131.130:/root
2、主机B操作

# vim /etc/my.cnf

server-id = 21

log-bin=mysql-bin

log-bin-index= mysql-bin.index

replicate-do-db=test

binlog-ignore-db=mysql

binlog-ignore-db=information_schema

auto-increment-increment=2

auto-increment-offset=2

#service mysqld restart

# mysql -uroot -p123456 < test.sql

# mysql -uroot -p123456

mysql> grant replication slave on *.* to 'wdd'@'192.168.131.129' identified by '123456';

mysql> flush privileges;
3.主机A和主机B分别作如下操作

主机A

# mysql -uroot -p123456

mysql> SHOW MASTER STATUS;

mysql> change master to

master_host='192.168.131.130',

master_user='wdd',

master_password='123456',

master_log_file=' mysql-bin.000002',

master_log_pos=420;

mysql> start slave;

mysql> show slave status\G;
 
 
# mysql -uroot -p123456

mysql> show master status;

mysql> change master to

master_host='192.168.131.129',

master_user='wdd',

master_password='123456',

master_log_file='mysql-bin.000002',

master_log_pos=689;

mysql> start slave;

mysql> show slave status\G;

三、测试

1、主机A进行一下操作

mysql> use test;

mysql> create table info(

-> id int(10) not null auto_increment primary key,

-> name char(20));

mysql> show tables;

2、主机B进行操作

mysql> use test;

mysql> show tables;

mysql> create table person (

-> id int(20) unsigned not null auto_increment primary key,

-> name char(20));

mysql> show tables;

3.在主机A进行操作检验
 

mysq双主模式的更多相关文章

  1. nginx+keepalived高可用及双主模式

    高可用有2中方式. 1.Nginx+keepalived 主从配置 这种方案,使用一个vip地址,前端使用2台机器,一台做主,一台做备,但同时只有一台机器工作,另一台备份机器在主机器不出现故障的时候, ...

  2. 通过keepalived搭建MySQL双主模式的高可用集群系统

    1. 配置MySQL双主模式 1.修改my.cnf配置文件 默认情况下,MySQL的配置文件是/etc/my.cnf,在配置文件的[mysqld]段添加如下内容: server-id=1 log-bi ...

  3. MySQL的主从复制+双主模式

    MySQL的主从复制 部署环境: MySQL master 192.168.40.21 MySQL slave  192.168.40.22 思路: 当主MySQL上进行数据上的操作或者变化时,主My ...

  4. haproxy+keepalived主备与双主模式配置

    Haproxy+Keepalived主备模式 主备节点设置 主备节点上各安装配置haproxy,配置内容且要相同 global log 127.0.0.1 local2 chroot /var/lib ...

  5. 生产环境中mysql+keepalive双主模式,keepalive守护进程实现双主切换提供数据库服务

    mysql+keepalive实现浮动地址自动切换,由于keepalive无自带健康检查功能,所以必须自动编写健康检查守护进程(监控DB1和DB2数据库的监控状态,来保证浮动地址双机自动切换.) 一, ...

  6. Nginx+keepalived(高可用双主模式)

    Nginx+keepalived(高可用双主模式) tips:前面已经介绍了nginx+keepalived高可用主从模式,今天补充下高可用的双主模式,均可以作为主机使用 server1:192.16 ...

  7. nginx+keepalived高可用及双主模式【h】

    高可用有2中方式. 1.Nginx+keepalived 主从配置 这种方案,使用一个vip地址,前端使用2台机器,一台做主,一台做备,但同时只有一台机器工作,另一台备份机器在主机器不出现故障的时候, ...

  8. MYSQL双主模式,触发器(trigger)不可见问题

    MYSQL版本信息: Your MySQL connection id is 71851 Server version: 5.7.24-log MySQL Community Server (GPL) ...

  9. Nginx+keepalived 高可用双机热备(主从模式/双主模式)

    基础介绍负载均衡技术对于一个网站尤其是大型网站的web服务器集群来说是至关重要的!做好负载均衡架构,可以实现故障转移和高可用环境,避免单点故障,保证网站健康持续运行. 关于负载均衡介绍,可以参考:li ...

随机推荐

  1. MFC使用TRACKMOUSEEVENT触发mouseHover和mouseLeave

    为对话框添加WM_MOUSEHOVER或WM_MOUSELEAVE消息并不会响应.MFC需要特殊处理,其中一法就是使用TRACKMOUSEEVENT void CmfcDlgDlg::OnMouseM ...

  2. 使用Freemarker宏进行可扩展式模块化编程

    作者:Chu Lung 原文链接:http://blog.chulung.com/article/13 本文由MetaCLBlog于2016-07-08 14:42:10自动同步至cnblogs 一. ...

  3. 【转】操作权限不够?教你开启Win7管理员帐户

    在Win7中进行一些设置,或修改某些文件时,经常会弹出当前帐户没有操作权限的提示,即使已经是管理员账户也不行.事实上,出于安全方面的考虑,默认情况下Win7系统的系统管理员Administrator账 ...

  4. HTML中的下拉列表 select

    HTML中的下拉列表: <select> <option value ="1">Volvo</option> <option value ...

  5. 了解 JavaScript 应用程序中的内存泄漏

    简介 当处理 JavaScript 这样的脚本语言时,很容易忘记每个对象.类.字符串.数字和方法都需要分配和保留内存.语言和运行时的垃圾回收器隐藏了内存分配和释放的具体细节. 许多功能无需考虑内存管理 ...

  6. jquery点击添加样式,再点击取出样式

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  7. Redmine2.5+CentOS6+Apache2

    redmine是使用ruby开发的一款无任何商业限制且可自行部署的项目管理软件,其简洁的界面比较符合程序猿的定位,使用起来比较方便,由于我之前装3X没 成功,各版本之间的依存和配置都不一样,所以最后参 ...

  8. 深入理解js——函数和对象的关系

    函数也是对象,但是函数却不像数组--数组是对象的一种,它是对象的一个子集.函数和数组之间不是单纯的包含与被包含的关系,它们之间有点像鸡生蛋蛋生鸡的逻辑. 来例子:function Fn(){ this ...

  9. SQL in与exists

    无可置疑,如果in()的结果集非常庞大,那么效率必然是低的. 但EXISTS subquery根据其语法可知在SQL中的作用是:检验查询是否返回数据.如果在 Dictionary 对象中指定的关键字存 ...

  10. shell和bat 监控进程,自动关机

    1.linux 下监控进程,进程结束后关机 新建文件 monit.sh $chmod +x monit.sh 加入代码 #!/bin/sh a=; ]; do |;then echo "sh ...