mysql的双主模式

mysql主主复制配置

server1 ip:192.168.0.231
server2 ip:192.168.0.234

更改两台主机的mysql配置文件
vim /etc/my.cnf
server1添加
server-id=1
log-bin=mysqlmaster-bin.log
auto-increment-increment=2
auto-increment-offset=1

server2添加
server-id=2
log-bin=mysqlmaster-bin.log
auto-increment-increment=2
auto-increment-offset=2

说明:auto-increment-increment的值设为整个结构中服务器的总数,此实验为两台服务器,所以值为2
auto-increment-offset是用来设定数据库中自动增长的起点的,因为服务器都设定了一次自动增长的值为2,所以他们的起点必须得不同,这样才能避免两台服务器数据同步时出现主键冲突

另可以设置replicate-do-db=database-name指定需要同步的数据库

重启mysql服务使配置生效

登陆mysql

添加同步数据所需要的用户

server1上

mysql>GRANT REPLICATION SLAVE ON *.* TO ‘systop1‘@‘192.168.0.%‘ IDENTIFIED BY ‘systop‘;

server2上

GRANT REPLICATION SLAVE ON *.* TO ‘systop2‘@‘192.168.0.%‘ IDENTIFIED BY ‘systop‘;

查看两台服务器的master状态

server1

SHOW MASTER STATUS;
+------------------------+----------+--------------+------------------+-------------------+
| File                   | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------------+----------+--------------+------------------+-------------------+
| mysqlmaster-bin.000002 |      120 |              |                  |                   |

server2

show master status;
+------------------------+----------+--------------+------------------+-------------------+
| File                   | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------------+----------+--------------+------------------+-------------------+
| mysqlmaster-bin.000001 |      336 |              |                  |                   |

说明二进制日志路径

server2上执行

CHANGE MASTER TO MASTER_HOST=‘192.168.0.231‘,MASTER_USER=‘systop1‘,MASTER_PASSWORD=‘systop‘,MASTER_LOG_FILE=‘mysql-bin.000002‘,MASTER_LOG_POS=120;

server1上执行

CHANGE MASTER TO MASTER_HOST=‘192.168.0.234‘,MASTER_USER=‘systop2‘,MASTER_PASSWORD=‘systop‘,MASTER_LOG_FILE=‘mysqlmaster-bin.000001‘,MASTER_LOG_POS=336;

开启复制功能

两台机器都执行
start slave;

查看复制连接状态
执行
show slave status \G;
查看Slave_IO_Running: Yes
   Slave_SQL_Running: Yes
都显示yes表示启动正常

测试:两台服务器都做数据更新操作,查看数据是否更新

 

时间: 2024-10-21 15:38:29

mysql的双主模式的相关文章

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

企业级MySQL集群具备高可用.可扩展.易管理.低成本的特点.下面将介绍企业环境中经常应用的一个解决方案,即MySQL的双主互备架构,主要设计思路是通过MySQL Replication技术将两台MySQL Server互相将对方作为自己的Master,自己又同时作为对方的Slave来进行复制.这样就实现了高可用构架中的数据同步功能,同时,将采用KeepAlived来实现Mysql的自动failover.在这个构架中,虽然两台MySQL Server互为主从,但同一时刻只有一个MySQL Ser

MySQL的主从复制+双主模式

MySQL的主从复制 部署环境: MySQL master 192.168.40.21 MySQL slave  192.168.40.22 思路: 当主MySQL上进行数据上的操作或者变化时,主MySQL上的二进制日志文件(binary log)会随之产生变化,这时从MySQL上开启I/O线程和sql线程: I/O线程是对主MySQL上二进制日志文件进行读取,读取到从MySQL的中继日志文件上(relay log) sql线程是读取和执行中继日志文件上数据,整过程就是实现主从复制的过程,实现后

MySQL keepalived 双主.md

MySQL keepalived 双主搭建 环境说明 系统 IP 主机名 mysql keepalived VIP CentOS 6.8 192.168.197.61 C6-node1 5.6.36 1.2.13 192.168.197.88 CentOS 6.8 192.168.197.62 C6-node2 5.6.36 1.2.13 192.168.197.88 安装MySQL双主 C6-node1 MySQL的安装及初始化这里不做详细介绍,下面贴出node1的my.cnf的配置文件: [

mysql 主从,双主简单配置

##创建两台版本相同的mysql 1.主节点修改配置文件 /etc/mysql/my.cf log-bin=master-bin                  #启用二进制日志 默认可以不改 # binary logging format - mixed recommended binlog_format=mixed # required unique id between 1 and 2^32 - 1 # defaults to 1 if master-host is not set #

mysql 主从复制+双主复制

我们在使用MySQL Server数据库时,可能会遇到这种问题,如果其中一台mysql数据库宕掉后,我们希望以最短的时间进行解决,并尽快使用数据库,但是如果遇到一些无法快速修复的故障时,该怎么办呢? 我们可以设想,如果这是有另外一台和这个数据库一模一样的数据库时,问题就不一样了,怎么才可以实现实时,并自动的备份或者复制呢?   Mysql的主从复制: 1.主机安装好mysql服务后,首先修改my.cnf文件,添加两行,其中server id确保唯一 2.备机修改my.cnf 3.两台mysql重

Mysql+keeoalived双主热备高可用操作记录

我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.之前梳理了Mysql主从同步,下面说下Mysql+keeoalived双主热备高可用方案的实施. 1)Keepalived的工作原理是VRRP(Virtual Router Redundancy Protocol)虚拟路由冗余协议.在VRRP中有两组重要的概念:VRRP路由器和虚拟路由器,主控路由器和备份路由器. 2)VRRP路由器

keepalived双主模式实现nginx高可用及LNAMMP架构

keepalived双主模式实现nginx高可用及LNAMMP架构 一.利用keepalived实现nginx调度器高可用: 二.构建LNAMMP架构: 1) Nginx既是前端调度器,又是缓存服务器: 2) 将php的session缓存于memcached中: 3) 在Apache和php上部署Discuz论坛程序: 4) 使用https连接,即使用户使用的是http协议也可以以https协议进行访问: ---------------------------------------------

ansible实现nginx双主模式反代,keepalived高可用,memcached缓存

ansible自动化运维工具配置ngnix前端反代到后端真实机,并设置keepalived高可用,在后端一台真实主机上配置httpd,mysql,php-fpm:设置memcached缓存服务器在这台真实主机上:(因为本人电脑配置问题,无法开启那么多虚拟机,所以就简单构建了一下) IP配置: Directory1(MASTER): eno16777736:172.16.72.5 eno16777736:0:172.16.72.1(虚拟VIP) eno33554976:192.168.72.1 e

Mysql+Keepalived双主热备高可用操作步骤详细解析

mysql+keepalived双主热备高可用的介绍: 我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互为Master-Slave(只有一个Master提供写操作),可以实现数据库服务器的热备,但是一个Master宕机后不能实现动态切换.使用Keepalived,可以通过虚拟IP,实现双主对外的统一接口以及自动检查.失败切换机制,从而实现MySQL数据库的