mysql 5.7 master、salve 切换
os: centos 7.4
db: mysql 5.7.21
切换前
192.168.56.100 master
192.168.56.200 slave
切换后
192.168.56.100 slave
192.168.56.200 master
版本
MySQL [(none)]> select version();
+------------+
| version() |
+------------+
| 5.7.21-log |
+------------+
1 row in set (0.01 sec)
master关闭mysql
# /etc/init.d/mysql.server stop
MySQL server PID file could not be found! [ OK ]
slave上执行
MySQL [(none)]> stop slave io_thread;
MySQL [(none)]> show processlist\G
*************************** 1. row ***************************Id: 4User: rootHost: localhostdb: NULL
Command: QueryTime: 0State: startingInfo: show processlist
*************************** 2. row ***************************Id: 9User: system userHost: db: NULL
Command: ConnectTime: 167State: Slave has read all relay log; waiting for more updatesInfo: NULL
2 rows in set (0.00 sec)
一定要确保出现 Slave has read all relay log,才能继续往下运行
MySQL [(none)]> stop slave;
MySQL [(none)]> reset master;
MySQL [(none)]> create user 'replicator'@'192.168.56.%' identified by 'mysqlmysql';
MySQL [(none)]> grant replication slave on *.* to 'replicator'@'192.168.56.%';
MySQL [(none)]> flush privileges;
MySQL [(none)]> show processlist;
+----+------+-----------+------+---------+------+----------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+-----------+------+---------+------+----------+------------------+
| 4 | root | localhost | NULL | Query | 0 | starting | show processlist |
+----+------+-----------+------+---------+------+----------+------------------+
1 row in set (0.00 sec)
删除服务器上的master.info和relay-log.info文件,否则下次重启时还会按照从库启动。
# cd /var/lib/mysql/
# rm -f master.info relay-log.info
新slave上执行
现在需要把老的master变为一个新的slave
MySQL [(none)]> change master tomaster_host='192.168.56.200',master_user='replicator',master_password='mysqlmysql',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=1194;MySQL [(none)]> start slave;
MySQL [(none)]> show slave status\G
*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 192.168.56.200Master_User: replicatorMaster_Port: 3306Connect_Retry: Master_Log_File: mysql-bin.000001Read_Master_Log_Pos: 1194Relay_Log_File: mysql-relay-bin.000002Relay_Log_Pos: 320Relay_Master_Log_File: mysql-bin.000001Slave_IO_Running: YesSlave_SQL_Running: Yes
确保Slave_IO_Running,Slave_SQL_Running均为Yes
新master上执行
MySQL [(none)]> show processlist\G
*************************** 1. row ***************************Id: 5User: rootHost: localhostdb: NULL
Command: QueryTime: 0State: startingInfo: show processlist
*************************** 2. row ***************************Id: 7User: replicatorHost: 192.168.56.100:44070db: NULL
Command: Binlog DumpTime: 206State: Master has sent all binlog to slave; waiting for more updatesInfo: NULL
2 rows in set (0.00 sec)
出现Master has sent all binlog to slave;说明master已经和slave建立了连接
mysql 5.7 master、salve 切换相关推荐
- mysql 怎么转换用户_mysql切换用户
环境:MySql 5.5 1.切换用户: 第一种方法 1.dos进入mysql安装bin目录下: cd C:\Program Files\MySQL\MySQL Server 5.5\bin 2.输入 ...
- mysql 热切换_热备服务器中,切换master中切换SQL
在master出现故障,需要一个热备服务器及时切换的时候,原先master下面的slave也需要及时的进行切换到热备的那台新master服务器上 在master出现故障,需要一个热备服务器及时切换的时 ...
- mysql中多个表 master salve同步搭建过程
一.需求: 主库为 192.168.92.108 ,上面运行多个数据库,其中meibi数据库下的几个业务表需要搭建从库并同步: 从库为 192.168.92.86 ,安装了msyql软件,还没有创建 ...
- mysql双主故障自动切换_mysql双主热备宕机自动切换
一.定义 通常说的「双机热备」是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短. 二.原理 Keepal ...
- MySQL集群中主从切换
第一种情况:主机未宕机.正常切换 第一步,停止主从操作 在从机上执行, SHOW PROCESSLIST 发现Has read all relaylogwaiting for the slave I/ ...
- mysql的多master调度_innodb中master线程的调度的算法改进(mysql 5.6.26)
innodb中master线程的调度的算法改进(mysql 5.6.26) 作者:周琳 QQ:715169549源码交流群:196380905 1.master线程的调度:/************* ...
- mysql双主故障自动切换_MySQL主库高可用 -- 双主单活故障自动切换方案
前言:(PS:前言是后来修改本文时加的)对于这篇文章,有博友提出了一些疑问和见解, 有了博友的关注,也促使我想把这套东西做的更实用.更安全.后来又经过思考,对脚本中一些条件和行为做了些改变.经过几次修 ...
- mysql主从遇故障自动切换_mysql主宕机,主从故障切换(一主多从)
一:环境 192.168.1.100 master 192.168.1.101 slave1 192.168.1.102 slave2 slave1,slave2都是连在master上. 二:模拟主故 ...
- mysql 从库 read-only_mysql salve从库设置read only 属性
经过实际测试,对于MySQL单实例数据库和master库,如果需要设置为只读状态,需要进行如下操作和设置: 将MySQL设置为只读状态的命令: # mysql -uroot -p mysql> ...
- Spring+Mybatis多数据源配置(一)——MySQL与Oracle通过配置切换
欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 欢迎跳转到本文的原文链接:https: ...
最新文章
- EntityFramework Code-First 简易教程(三)-------数据库初始化
- 如何按多个列对数据框进行排序
- Spinner的使用(一):与ArrayAdapter的配合使用
- 转:Siri之父:语音交互或将主导未来十年发展
- wxWidgets:最小的 wxWidgets 示例
- 加工中心局部坐标系g52设定_CNC加工中心程序代码大全,数控加工必备!
- 在Asp.net+FCKEditor设置最新最完整配置方法(转帖)
- 韩顺平.2011最新版.玩转oracle视频教程笔记,韩顺平.2011最新版.玩转oracle视频教程(笔记)...
- 为什么每个线程都需要创建一个栈?
- 选择不相交区间(贪心:求不相交区间最多个数)
- 安全云盘项目(一):1.5 bufferevent服务端代码事件策略
- Digits of Factorial LightOJ - 1045(数学题?)
- 总结下MySql优化。防止数据灾难的发生。
- IIS启用GZip压缩
- Pyston v2 发布:比 Python 快 20%
- PS渐变羽化制作单车
- 视频直播iOS端技术
- 阿里云视频上传到抖音服务器
- android手机如何关闭程序,安卓手机如何关闭防火墙
- 五色石FCS周报 2019.5.13-2019.5.19