mysql双向主主同步

mysql主主同步(AB复制)

互为主MySQL服务器,互为从MySQL服务器
    master1                           master2
192.168.4.1                 192.168.4.2
一、公共配置:
server   mysql  start
ping  192.168.4.1
ping 192.168.4.2
关闭 iptables    selinux 
关闭 selinux

一、 配置master1主配置文件

 [[email protected] ~]# vim /etc/my.cnf
[mysqld]
server_id = 1
log_bin = log
log_slave_updates = 1
auto_increment_increment = 2
auto_increment_offset = 1
:wq
service   mysql   restart                  \\启动MySQL服务

          
netstat -anptu   | grep :3306               \\查看MySQL状态
mysql   -hlocalhost   -uroot  -p999
mysql> grant  replication slave  on *.*  to [email protected]"192.168.4.2" identified by "123"; 
mysql> show  master  status\G;                  \\查看主服务器的状态

二、配置master2 数据库服务器

mysql  -hlocalhost  -uroot  -p999                 \\登陆MySQL服务器
mysql> change  master  to 
    -> master_host="192.168.4.1",
    -> master_user="slaveuser",
    -> master_password="123",
    -> master_log_file="log.000001",        \\依据主服务器的状态(可能每个人的不同,这个不影响)
    -> master_log_pos=120;
Query OK, 0 rows affected, 2 warnings (0.05 sec)
mysql> start  slave;
mysql> show  slave  status\G;                 \\查看从服务器的状态
         ......         
         Slave_IO_Running: Yes
         Slave_SQL_Running: Yes               \\出现这俩个说明配置成功
         .......

三、  配置master1主配置文件

[[email protected] ~]# vim /etc/my.cnf
[mysqld]
server_id = 2
log_bin = log1
log_slave_updates = 1
auto_increment_increment = 2
auto_increment_offset = 2
:wq
service mysql restart
                                               netstat -anptu   | grep :3306               \\查看MySQL状态
mysql -hlocalhost -uroot -p999               \\ master1 和 master2 密码一样
mysql> grant replication slave on *.* to [email protected]"192.168.4.1" identified by "123";                                    \\授权从MySQL
mysql> show master status\G;

四、配置master1 数据库服务器

mysql -hlocalhost -uroot -p999
mysql> change master to 
-> master_host="192.168.4.1",
-> master_user="slaveuser",
-> master_password="123",
-> master_log_file="log1.000001",
-> master_log_pos=120;
Query OK, 0 rows affected, 2 warnings (0.05 sec)
mysql> start slave;                               \\启动从MySQL服务器
mysql> show slave status\G;                        \\查看从服务器的状态
          ......
          Slave_IO_Running: Yes                  \\出现这俩个说明配置成功      
         Slave_SQL_Running: Yes
          ......

五、测试主从同步

cd   /var/lib/mysql/                \\进入MySQL目录路径查看是否生成如下几个文件
master.info
relay-log.info
log-relay-bin.000001
log-relay-bin.index
时间: 2024-10-19 11:19:21

mysql双向主主同步的相关文章

MySql数据库双主(双向)同步实现数据库双主热备

MySql数据库双主(双向)同步实现数据库双主热备配置步骤有一点复杂,大家一定要看清楚每一步小细节哦,希望文章对各位会带来帮助呀. 之前写过一篇 mysql Master Slave主从同步(复制)配置,属于数据库备份级别的.现在的需求是,两台服务器上都装有数据库,为了防止某一服务器出现问题而影响业务的运行,需要准备两台服务器分别运行mysql,且需要两台服务器的数据是保持同步的.也就是现在要说的mysql双向同步,实现数据库主备模式. 基础环境 操作服务器系统:Ubuntu 12.04 64-

趁一切还来得及【六】数据库MySQL读写分离与主主同步

相思相见知何日?此时此夜难为情.                                                      --[唐]李白 第一章 数据库MySQL主从复制读写分离授权 1.1 主从复制读写分离方案简单分析 ①数据库主从复制搭建之后,因为数据是单向的,因此默认规则就是所有的数据(主从相关收据)写入和更新都在主库上进行操作,避免主从同步的时候造成冲突. ②严格上来讲,从库上的非同步的库写入数据,只要和主库没有关系,也是可以写入的(或者作为主库),但是如果主从都想其中

MySQL主主同步

MySQL主主同步 主主同步原理同主从,不过是双向而已 1.修改1.4配置文件 vim /etc/my.cnf #同时开始binlog和relay log log-bin=mysql-bin binlog_format=mixed server-id = 1 sync_master_info = 1 sync_binlog = 1  innodb_support_xa = ON relay_log= relay-log relay_log_index=relay-log.index skip_s

部署MySQL主主双向主从复制 M-M

通过MySQL主主:进行MySQL双向同步数据库HA的配置配置node-1它有两种身份:身份1: node-1的主. 身份2: node-2的从. 安装MySQL 5.7版本上传mysql-5.7.tar.gz到Linux主机上,并解压:注:mysql-5.7.tar.gz 中包括了安装mysql5.7主要的软件包. 这样部署起来更方便下载并解压安装[[email protected] ~]# wget https://cdn.mysql.com//Downloads/MySQL-5.7/mys

mysql数据库负载均衡高可用之主从、主主备份,实时同步

一:MySQL Replication 什么是MySQL Replication Replication可以实现将数据从一台数据库服务器(master)复制到一或多台数据库服务器(slave) 默认情况下属于异步复制,无需维持长连接 通过配置,可以复制所有的库或者几个库,甚至库中的一些表 是MySQL内建的,本身自带的 Replication的原理 简单的说就是master将数据库的改变写入二进制日志,slave同步这些二进制日志,并根据这些二进制日志进行数据操作 DML:SQL操作语句,upd

MySQL 主从同步(1) - 概念和原理介绍 以及 主从/主主模式 部署记录

Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接收从那时起

MySQL 主从复制、主主复制、半同步复制

MySQL 复制 =============================================================================== 概述: =============================================================================== MySQL Replication:   1.主从复制的目的和架构 ★Master/Slave(主/从) Master: write/read Slave

mysql的主从、主主及半同步复制

mysql复制 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重新执行一遍来实现的.复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护文件的一个索引以跟踪日志循环.这些日志可以记录发送到从服务器的更新.当一个从服务器连接主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置.从服务器接

搭建MySQL的主从、半同步、主主复制架构

复制其最终目的是让一台服务器的数据和另外的服务器的数据保持同步,已达到数据冗余或者服务的负载均衡.一台主服务器可以连接多台从服务器,并且从服务器也可以反过来作为主服务器.主从服务器可以位于不同的网络拓扑中,由于mysql的强大复制功能,其复制目标可以是所有的数据库,也可以是某些数据库,甚至是某个数据库中的某些表进行复制. MySQL支持的两种复制方案:基于语句复制,基于行复制基于语句复制基于行复制,这两种复制方式都是通过记录主服务器的二进制日志中任何有可能导致数据库内数据发生改变的SQL语句到中