MySQL5.7控制复制源服务器的SQL语句

  官网地址:MySQL :: MySQL 5.7 Reference Manual :: 13.4.1 SQL Statements for Controlling Replication Source Servers

欢迎关注留言,我是收集整理小能手,工具翻译,仅供参考,笔芯笔芯.

MySQL 5.7 参考手册  /  ...  /  控制复制源服务器的 SQL 语句

13.4.1 控制复制源服务器的SQL语句

13.4.1.1 清除二进制日志语句

13.4.1.2 RESET MASTER 语句

13.4.1.3 SET sql_log_bin 语句

本节讨论用于管理复制源服务器的语句。第 13.4.2 节“用于控制副本服务器的 SQL 语句”讨论用于管理副本服务器的语句。

除了此处描述的语句之外,以下 SHOW语句还用于复制中的源服务器。有关这些语句的信息,请参阅第 13.7.5 节“SHOW 语句”。

  • SHOW BINARY LOGS

  • SHOW BINLOG EVENTS

  • SHOW MASTER STATUS

  • SHOW SLAVE HOSTS​​​​​

MySQL 5.7 参考手册  /  ...  /  PURGE BINARY LOGS 语句
13.4.1.1 清除二进制日志语句
PURGE { BINARY | MASTER } LOGS {TO 'log_name'| BEFORE datetime_expr
}

二进制日志是一组文件,其中包含有关 MySQL 服务器所做的数据修改的信息。日志由一组二进制日志文件和一个索引文件组成(请参见 第 5.4.4 节“二进制日志”)。

该PURGE BINARY LOGS语句删除日志索引文件中列出的指定日志文件名或日期之前的所有二进制日志文件。 BINARYMASTER是同义词。删除的日志文件也会从索引文件中记录的列表中删除,以便给定的日志文件成为列表中的第一个。

PURGE BINARY LOGS需要 BINLOG_ADMIN特权。--log-bin如果服务器不是使用启用二进制日志记录的选项 启动的,则此语句无效 。

例子:

PURGE BINARY LOGS TO 'mysql-bin.010';
PURGE BINARY LOGS BEFORE '2019-04-02 22:46:26';

BEFORE体的 datetime_expr参数应计算为一个DATETIME值(格式中的值)。 'YYYY-MM-DD hh:mm:ss'

当副本正在复制时,此语句可以安全运行。你不需要阻止他们。如果您有一个活动副本当前正在读取您尝试删除的日志文件之一,则此语句不会删除正在使用的日志文件或晚于该日志文件的任何日志文件,但会删除所有较早的日志文件。在这种情况下会发出警告消息。但是,如果副本未连接,并且您碰巧清除了它尚未读取的日志文件之一,则副本在重新连接后将无法进行复制。

要安全地清除二进制日志文件,请按照以下过程操作:

  1. 在每个副本上,用于SHOW SLAVE STATUS检查它正在读取哪个日志文件。

  2. 使用 获取复制源服务器上的二进制日志文件的列表SHOW BINARY LOGS。

  3. 确定所有副本中最早的日志文件。这是目标文件。如果所有副本都是最新的,则这是列表中的最后一个日志文件。

  4. 备份您要删除的所有日志文件。(此步骤是可选的,但始终建议。)

  5. 清除直到但不包括目标文件的所有日志文件。

您还可以将 expire_logs_days系统变量设置为在给定天数后自动使二进制日志文件过期(请参见第 5.1.7 节 “服务器系统变量”)。如果您使用复制,则应将该变量设置为不低于副本可能落后于源的最大天数。

PURGE BINARY LOGS TO当文件中列出的二进制日志文件已通过其他方式(例如在 Linux 上使用 rm )从系统中删除时,两者都会失败并PURGE BINARY LOGS BEFORE出现错误。(Bug #18199、Bug #18453)要处理此类错误,请手动编辑文件(这是一个简单的文本文件)以确保它仅列出实际存在的二进制日志文件,然后再次运行 失败的语句。 .index.indexPURGE BINARY LOGS

 

MySQL 5.7 参考手册  /  ...  /  RESET MASTER 语句
13.4.1.2 RESET MASTER 语句
RESET MASTER
警告

请谨慎使用此语句,以确保您不会丢失任何所需的二进制日志文件数据和 GTID 执行历史记录。

RESET MASTER需要 RELOAD特权。

对于启用了二进制日志记录的服务器 ( log_binis ON),RESET MASTER删除所有现有的二进制日志文件并重置二进制日志索引文件,将服务器重置为启动二进制日志记录之前的状态。将创建一个新的空二进制日志文件,以便可以重新启动二进制日志记录。

对于正在使用 GTID 的服务器 ( gtid_modeis ON),发出命令RESET MASTER 会重置 GTID 执行历史记录。系统变量的值 gtid_purged被设置为空字符串(''),系统变量的全局值(但不是会话值) gtid_executed被设置为空字符串,并且 mysql.gtid_executed表被清除(参见 mysql.gtid_execulated 表)。如果启用 GTID 的服务器启用了二进制日志记录, RESET MASTER还会按上述方式重置二进制日志。请注意,这 RESET MASTER是重置 GTID 执行历史记录的方法,即使启用 GTID 的服务器是禁用二进制日志记录的副本; RESET SLAVE对 GTID 执行历史没有影响。有关重置 GTID 执行历史记录的更多信息,请参阅 重置 GTID 执行历史记录。

重要的

的效果与 的效果有两个主要 RESET MASTER 不同之处:PURGE BINARY LOGS

  1. RESET MASTER删除 索引文件中列出的所有.000001二进制日志文件,只留下一个带有数字后缀的空二进制日志文件,而编号不会由 重置 PURGE BINARY LOGS。

  2. RESET MASTER不 打算在任何副本运行时使用。RESET MASTER副本运行时使用的行为 未定义(因此不受支持),而PURGE BINARY LOGS副本运行时可以安全使用。

另请参见第 13.4.1.1 节“PURGE BINARY LOGS 语句”。

RESET MASTER当您首次设置源和副本时,这会很有用,以便您可以按如下方式验证设置:

  1. 启动源和副本,然后开始复制(请参见 第 16.1.2 节 “设置基于二进制日志文件位置的复制”)。

  2. 对源执行一些测试查询。

  3. 检查查询是否已复制到副本。

  4. 当复制正确运行时,在副本上发出问题 STOP SLAVE, RESET SLAVE然后验证副本上不再存在任何不需要的数据。

  5. 在源上发出问题RESET MASTER以清理测试查询。

验证设置、重置源和副本并确保源或副本上没有测试生成的不需要的数据或二进制日志文件后,您可以启动副本并开始复制。

MySQL 5.7 参考手册  /.../SET   sql_log_bin  语句
13.4.1.3 SET sql_log_bin 语句
SET sql_log_bin = {OFF|ON}

该sql_log_bin变量控制是否为当前会话启用记录到二进制日志(假设二进制日志本身已启用)。默认值为ON。要禁用或启用当前会话的二进制日志记录,请将会话sql_log_bin变量设置为 OFFON

将此变量设置为OFF会话,以在对不希望复制到副本的源进行更改时临时禁用二进制日志记录。

设置此系统变量的会话值是一项受限制的操作。会话用户必须具有足够的权限才能设置受限会话变量。请参见 第 5.1.8.1 节“系统变量权限”。

无法 sql_log_bin在事务或子查询中设置会话值。

设置此变量可防止OFF 将 GTID 分配给二进制日志中的事务。如果您使用 GTID 进行复制,这意味着即使稍后再次启用二进制日志记录,从此时写入日志的 GTID 也不会考虑同时发生的任何事务,因此实际上这些事务都会丢失。

全局sql_log_bin变量是只读的,不能修改。全局范围已被弃用;预计它会在未来的 MySQL 版本中被删除。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/593232.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue:Vue 3.4 新特性

Vue 3.4 是 Vue.js 的一个重要更新,它在性能、API 和能上带来了许多改进和增强。 更好的 TypeScript 支持 Vue 3.4 进一步加强了 TypeScript 的集成,提供了更好的类型推断和更丰富的类型定义,使得使用 TypeScript 开发 Vue 应用变得更加顺畅…

看懂 Git Graph

目录 文章目录 目录Git Graph看懂 GraphVSCode Git Graph 插件1. 选择展示的 Branches2. Checkout 到一个 Branch3. 找到指定 Branch 最新的 Commit4. 找到 Branch 分叉口5. 查看 2 个 Commits 之前的区别 Git Graph Git Graph 是服务于 Git 分支管理的一种可视化工具&#xf…

大文件断点下载Range下载zip包显示文件损坏

问题:大文件下载,其它格式的文件及rar格式的压缩包正常下载但是 之后zip包下载后解压失败 原因分析: 1. 查看上传文件的属性值 如图,10.4kb是已经约去小数点的值,准确的大小应该是10663字节10.4130859375KB,所以用10.…

VS Code 远程连接云机器训练配置

VS Code 远程连接云机器 Visual Studio Code(以下简称 VS Code)是一个由微软开发的代码编辑器。VS Code 支持代码补全、代码片段、代码重构、Git 版本控制等功能。 安装 VSCode步骤简单且网上有很多教程,这里不过多重复了。 VS Code 现已支…

Nacos配置回滚

前言 很多时候,我们会配置错一些属性,或者需要回滚某些属性,这时候使用Nacos的回滚功能就很方便了 配置回滚 1、在控制台中,选择左侧导航栏的 “配置管理”,进入历史版本,选择Group和data id&#xff0c…

掌握ROS:完整的认识ROS

目录 前景知识补充 什么是元操作系统? 高层决策 高层决策的特点 什么是ROS? ROS的框架 1. 通信机制 系统工具 开发框架 ROS的开发流程 ROS的应用场景 前景知识补充 什么是元操作系统? 元操作系统(Meta-Operating Sys…

opencv C++透视变换

#include <opencv2/opencv.hpp> #include <iostream> int main() {// 1. 读取图像 cv::Mat image cv::imread("C:/Users/10623/Pictures/adf4d0d56444414cbeb809f0933b9214.png");if (image.empty()) {std::cerr << "无法读取图像!"…

PTA找出不是两个数组共有的元素(C语言)

读题&#xff1a; 给定两个整型数组&#xff0c;本题要求找出不是两者共有的元素。 输入格式: 输入分别在两行中给出两个整型数组&#xff0c;每行先给出正整数N&#xff08;≤20&#xff09;&#xff0c;随后是N个整数&#xff0c;其间以空格分隔。 输出格式: 在一行中按…

以源码为驱动:Java版工程项目管理系统平台助力工程企业迈向数字化管理的巅峰

随着企业规模的不断扩大和业务的快速发展&#xff0c;传统的工程项目管理方式已经无法满足现代企业的需求。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性&#xff0c;企业需要借助先进的数字化技术进行转型。本文将介绍一款采用Spring CloudSpring BootMybat…

vr眼镜和AR眼镜的区别有哪些?哪些产品可以支持VR应用?

vr眼镜怎么连接手机 要将VR眼镜连接到手机上&#xff0c;您可以按照以下步骤进行&#xff1a; 1. 确保您的手机支持VR应用程序&#xff1a;首先&#xff0c;确保您的手机具备运行VR应用程序的硬件和软件条件。一些VR应用程序可能对设备有特定的要求&#xff0c;如处理器性能、操…

【Java并发】深入浅出 synchronized关键词原理-上

一个问题的思考 建设我们有两个线程&#xff0c;一个进行5000次的相加操作&#xff0c;另一个进行5000次的减操作。那么最终结果是多少 package com.jia.syn;import java.util.concurrent.TimeUnit;/*** author qxlx* date 2024/1/2 10:08 PM*/ public class SynTest {privat…

Sharding Sphere 教程 简介

一 文档简介 1.1 分库分表诞生的前景 随着系统用户运行时间还有用户数量越来越多&#xff0c;整个数据库某些表的体积急剧上升&#xff0c;导致CRUD的时候性能严重下降&#xff0c;还容易造成系统假死。 这时候系统都会做一些基本的优化&#xff0c;比如加索引…

高德地图经纬度坐标导出工具

https://tool.xuexiareas.com/map/amap 可以导出单个点&#xff0c;也可以导出多个&#xff0c;多个点可以连成线&#xff0c;可用于前端开发时自己模拟“线“数据

基于Springboot的服务端开发脚手架-自动生成工具

继之前的 专题系列课程&#xff1a; ​​从零开始搭建grpc分布式应用​​完整DEMO&#xff1a;​​基于Springboot的Rpc服务端开发脚手架(base-grpc-framework)​​ 后带来一款项目自动手成工具&#xff08;由于包路径等原因&#xff0c;完整demo想应用在实际开发中需要改很多代…

编程笔记 html5cssjs 008 HTML图片

编程笔记 html5&css&js 008 HTML图片 一、HTML 图像二、HTML 图像- Alt属性三、HTML 图像- 设置图像的高度与宽度四、支持的图像格式五、对齐设置六、操作小结 和印刷品一样&#xff0c;网页上不仅要有文字&#xff0c;还要有图片和声音、视频、绘画等媒体形式。这一节…

广州求职招聘(找工作)去哪里找比较好

在广州找工作&#xff0c;可以选择“吉鹿力招聘网”这个平台。它是一个号称直接和boss聊的互联网招聘神器&#xff0c;同时&#xff0c;“吉鹿力招聘网”作岗位比较齐全&#xff0c;企业用户也多&#xff0c;比较全面。在“吉鹿力招聘网”历即可投递岗位。 广州找工作上 吉鹿力…

学习的记录

一、内核安装 1.安装内核编译工具 install gcc gcc-c ncurses ncurses-devel cmake elfutils-libelf-devel openssl-devel 将内核源码linux-4.14.160.tar拷贝到/usr/src/kernels目录下 cp -r linux-4.20.2.tar.xz /usr/src/kernels 2.进入内核源码所在的文件夹&#xff1…

结构体与函数简单总结(依靠洛谷结构体题与函数题单)

函数结构体简单总结 依靠洛谷函数与字符串题单 文章目录 函数结构体简单总结前言一、函数1、有返回值的函数2、无返回值函数3、递归函数 二、结构体总结 前言 之前总结了字符串的简单应用&#xff0c;随着函数与结构体的题单完成&#xff0c;入门题单也就刷完了&#xff0c;现…

你可能不知道的5款好用封面设计工具,快来一探究竟吧!

我相信每个作者和出版商都希望在一部作品完成后有一个醒目的封面&#xff0c;这样潜在的读者就会有足够的好奇心拿起这本书&#xff0c;你的书的销量就会上升。这就是封面设计软件的使用&#xff0c;专业的封面设计软件可以增加前沿效果&#xff0c;呈现最适合书籍内容的创意布…

Tailscale:随时随地远程和使用服务器

Tailscale是什么&#xff1f; 网上有时候提到tailscale&#xff0c;总是介绍好多&#xff0c;比如以下介绍&#xff0c;但是太官方了 Tailscale 是一种基于 WireGuard 的虚拟组网工具&#xff0c;和 Netmaker 类似&#xff0c;最大的区别在于 Tailscale 是在用户态实现了 Wire…