MySQL主从复制的切换可以分为以下两种情况:

  1. 主服务器宕机或数据丢失情况下的切换

当主服务器宕机或数据丢失时,需要将从服务器切换为主服务器。步骤如下:

  1. 在从服务器上停止slave进程
stop slave;
  1. 登录主服务器,将其作为从服务器
CHANGE MASTER TO MASTER_HOST='从服务器IP', MASTER_USER='用户名', MASTER_PASSWORD='密码', MASTER_LOG_FILE='主服务器最近的binlog文件名', MASTER_LOG_POS=主服务器最近binlog文件的偏移量;
  1. 在主服务器上开启binlog
vim /etc/my.cnf

在[mysqld]下添加以下配置:

log-bin=mysql-bin
server-id=1
  1. 在主服务器上重启mysql服务
service mysqld restart
  1. 在从服务器上启动slave进程
start slave;
  1. 主从服务器正常情况下的切换

当主从服务器正常运行时,需要将主从服务器进行切换。步骤如下:

  1. 在从服务器上停止slave进程
stop slave;
  1. 在主服务器上停止binlog
vim /etc/my.cnf

在[mysqld]下注释掉以下配置:

#log-bin=mysql-bin
#server-id=1
  1. 在从服务器上修改数据

  2. 在从服务器上启动slave进程

start slave;
  1. 在主服务器上开启binlog
vim /etc/my.cnf

在[mysqld]下添加以下配置:

log-bin=mysql-bin
server-id=1
  1. 在主服务器上重启mysql服务
service mysqld restart
  1. 在从服务器上停止slave进程
stop slave;
  1. 登录主服务器,将其作为从服务器
CHANGE MASTER TO MASTER_HOST='从服务器IP', MASTER_USER='用户名', MASTER_PASSWORD='密码', MASTER_LOG_FILE='主服务器最近的binlog文件名', MASTER_LOG_POS=主服务器最近binlog文件的偏移量;
  1. 在从服务器上启动slave进程
start slave;
mysql主从复制如何切换

原文地址: https://www.cveoy.top/t/topic/bh65 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录