mysql清除主从复制关系
mysql清除主从复制关系 网页转自https://www.cnblogs.com/wjoyxt/p/5343662.html
mysql主从复制中,需要将主从复制关系清除,需要取消其从库角色。这可通过执行RESET SLAVE ALL清除从库的同步复制信息、包括连接信息和二进制文件名、位置。从库上执行这个命令后,使用show slave status将不会有输出。
reset slave是各版本Mysql都有的功能,在stop slave之后使用。主要做:
删除master.info和relay-log.info文件;
删除所有的relay log(包括还没有应用完的日志),创建一个新的relay log文件;
从Mysql 5.5开始,多了一个all参数。如果不加all参数,那么所有的连接信息仍然保留在内存中,包括主库地址、端口、用户、密码等。这样可以直接运行start slave命令而不必重新输入change master to命令,而运行show slave status也仍和没有运行reset slave一样,有正常的输出。但如果加了all参数,那么这些内存中的数据也会被清除掉,运行show slave status就输出为空了。
mysql>stop slave; QueryOK, 0 rowsaffected (0,00 sec) mysql>reset slave all; QueryOK, 0 rowsaffected (0,04 sec) mysql> show slave status\G Emptyset (0,00 sec) 此时真正实现了清除slave同步复制关系!
--------------------------------------------------------------------------------
【一】RESET MASTER
功能说明:删除所有的binglog日志文件,并将日志索引文件清空,重新开始所有新的日志文件。用于第一次进行搭建主从库时,进行主库binlog初始化工作;
测试如下:
未删除前
[root@mysql01 mysql]# pwd
/usr/local/data/mysql
[root@mysql01 mysql]# ls
auto.cnf client-cert.pem ibdata1 ibtmp1 localhost.localdomain.pid mysql-bin.000002 mysql-bin.000005 mysqld_safe.pid public_key.pem sys
ca-key.pem client-key.pem ib_logfile0 imove mysql mysql-bin.000003 mysql-bin.000006 performance_schema server-cert.pem
ca.pem ib_buffer_pool ib_logfile1 localhost.localdomain.err mysql-bin.000001 mysql-bin.000004 mysql-bin.index private_key.pem server-key.pem
[root@localhost bin]# ./mysql -uroot -p123456
mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000006 | 16663694 | | | |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
mysql> 当前有6个binlong日志,且Position的位置为16663694
运行RESET MASTER
mysql> reset master;
Query OK, 0 rows affected (0.03 sec) mysql> show master status\G;
*************************** 1. row ***************************
File: mysql-bin.000001
Position: 107
Binlog_Do_DB:
Binlog_Ignore_DB:
1 row in set (0.00 sec) 显示所有的binlog已经被删除掉,且binlog从000001 开始记录
注:当数据库要清理binlog文件的时候,可以通过操作系统进行删除,也可以运行reset master进行删除。但是如果当前是主数据库,且主从数据库正常的时候,千万不能用这种方式删除。
【使用场景】第一次搭建主从数据库时,用于主库的初始化binglog操作。
【二】RESET SLAVE
功能说明:用于删除SLAVE数据库的relaylog日志文件,并重新启用新的relaylog文件;
测试如下:
登录从数据库,未删除前
mysql> show slave status\G;
*************************** 1\. row ***************************
Slave_IO_State: Connecting to master
Master_Host: 192.168.47.167
Master_User: server
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000019
Read_Master_Log_Pos: 12992 Relay_Log_File: mysql02-relay-bin.000004
Relay_Log_Pos: 4 Relay_Master_Log_File: mysql-bin.000019 当前relaylog为0004;
先停止slave,运行RESET MASTER
mysql> stop slave;
Query OK, 0 rows affected (0.01 sec)
mysql> reset slave;
Query OK, 0 rows affected (0.04 sec)
mysql> show slave status\G;
*************************** 1\. row ***************************
Slave_IO_State:
Master_Host: 192.168.47.167
Master_User: server
Master_Port: 3306
Connect_Retry: 60
Master_Log_File:
Read_Master_Log_Pos: 4 ** Relay_Log_File: mysql02-relay-bin.000001
Relay_Log_Pos: 4** RESET SLAVE将使SLAVE忘记主从复制关系的位置信息。该语句将被用于干净的启动, 它删除master.info文件和relay-log.info 文件以及所有的relay log 文件并重新启用一个新的relaylog文件。
使用场景:当原来的主从关系被破坏之后,从库经过重新初始化后直接连接会报 ERROR 1201的错误,运行reset slave后,重新配置主从连接就可以了;
mysql清除主从复制关系的更多相关文章
- 如何保障MySQL主从复制关系的稳定性?关键词(新特性、crash-safe)
一 前言 MySQL 主从架构已经被广泛应用,保障主从复制关系的稳定性是大家一直关注的焦点.MySQL 5.6 针对主从复制稳定性提供了新特性: slave 支持 crash-safe.该功能可以解决 ...
- liinux安装 mysql 及主从复制
mariadb其实就是mysqlmysql已经被oracle收购,它即将闭源,马上要开始收费了因此还想免费试用开源的数据库mysql,就在centos7上,将mysql分支为mariadb 安装mar ...
- 使用 Xtrabackup 在线对MySQL做主从复制【转】
1. 说明 1.1 xtrabackup mysqldump对于导出10G以下的数据库或几个表,还是适用的,而且更快捷.一旦数据量达到100-500G,无论是对原库的压力还是导出的性能,mysqldu ...
- Mysql主从(主从不同步解决办法,常见问题及解决办法,在线对mysql做主从复制)
一.主从不同步解决办法 先上Master库: mysql>show processlist; 查看下进程是否Sleep太多.发现很正常. show master status; 也正常. mys ...
- mysql的主从复制是如何实现的
前言 MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为 ...
- mysql数据库主从复制部署笔记
主从复制是mysql中数据库实时同步的一个常用做法了,今天我来给各位介绍一下关于mysql数据库主从复制部署一个过程,希望此例子对各位同学参考参考. 数据库主从复制原理: 数据库的主从复制就是从mas ...
- mysql之主从复制
原理--> 在数据库层面,复制语句或者行,因为在数据库层面,故只有主服务器生成,并放到二进制日志里面,才能复制给从服务器. 原理--> mysql的主从复制基于异步,主要有三个进程执行,分 ...
- Mysql中主从复制的原理、配置过程以及实际案例
Mysql中主从复制的原理.配置过程以及实际案例1.什么是主从复制?原理:主从分离,什么意思呢?我们不妨画个图看看.如图1所示: 2.准备工作:预备两台服务器,我这里使用虚拟机安装了两个Centos6 ...
- mysql简单主从复制(一)
MYSQL简单主从复制 master:172.25.44.1 slave:172.25.44.2 mysql5.7安装 master和slave均操作 准备rpm包:mysql-5.7.17-1.el ...
随机推荐
- 调用U9的标准接口
- Spring-Boot使用neo4j-java-driver-- 查找两个节点之间关系的最短路径
一.Cypher数据 create (小北:朋友圈{姓名:"小北", 喜欢的书类:"Poetry"}), (小菲:朋友圈{姓名:"小菲", ...
- C# 编译生成 产生多余的语言包删除"de" "en" "es" "fr" "hu" "it" "ja" "ko" "pr-br" "ro" "pt-br" "ru" "sv" "zh-hans" "zh-hant&qu
VS生成事件 rd /s /q "de" "en" "es" "fr" "hu" "it& ...
- java oop第10章_JDBC03(MVC分层模式)
引言:在进行程序开发的时候,为了更加利于程序的管理我们引入了新的开发模式MVC分层模式,即按功能将程序代码分别分为M(Model模型).V(View视图).C(Controller控制器)三个组成部分 ...
- 笔记48 Spring+SpringMVC+Hibernate整合
搭建Spring+SpringMVC+Hibernate的框架的思路如下: 1.创建Maven项目,按需映入Maven包依赖. 2.搭建Spring:配置Spring对控件层Bean的注入. 3.搭建 ...
- 笔记43 Spring Web Flow——订购披萨应用详解
一.项目的目录结构 二.订购流程总体设计 三.订购流程的详细设计 1.定义基本流程pizza-flow.xml <?xml version="1.0" encoding=&q ...
- robotframework+python3+selenium之下拉框的选择---第五集
由于我没有找到option形式的,所以借鉴其他大神的博客内容,如下: 1.F12后看见下拉框的源码是<option xxx> 2.如果F12后看到的下拉源码是这样的: <div xx ...
- List之去重
废话不多说,直接上代码 List<int> list1 = new List<int>(); list1.Add(); list1.Add(); list1.Add(); li ...
- hadoop创建目录文件失败
mkdir: Cannot create directory /file. Name node is in safe mode. 刚刚在hadoop想创建一个目录的时候,发现报错了 具体信息如下: ...
- web 开发流程
shopWeb登录 开发步骤 1 数据库 2 创建 Module 3 复制页面 4 创建目录包 添加需要的jar包(引入依赖) 配置文件 5 功能: 编写服务器程序