Mysql主从备份

主从复制概述

将主服务器的binlog日志复制到从服务器上执行一遍,达到主从数据的一致状态,称之为主从复制。一句话表示就是,主数据库做什么,从数据库就跟着做什么。

为什么要使用主从复制

为实现服务器负载均衡/读写分离做铺垫,提升访问速度
常规的读/写比例为10:1左右
主库主负责写和部分读,从库主负责读

通过复制实现数据的异地备份,保障数据安全
从库定期从主库上复制数据
提高数据库系统的可用性

主库宕机后,从库临时取代主库,只提供读操作
主库宕机后,从库永久取代主课,提供读写操作

主从复制原理

1.主从复制的前提
至少两个实例
不同的server_id
库开启二进制日志
主库需要授权一个专用复制用户
主库数据备份
开启专用复制线程

2.主从复制相关专业术语
文件
主库:binlog

从库:
relay-log,中继日志,存储主库传过来的binlog事件
master.info,主库信息,存储授权用户信息,及上次请求到的主库binlog的位置点
relay-log.info,中继日志应用信息

线程
主库:Dump_Thread,给库传送(TP)二进制日志线程

从库:
IO_Tread,从库IO线程,请求和接收binlog
SQL_Tread,从库的SQL线程

主从复制部署

环境:
db01    10.0.0.51 		mysql5.7 	主
db02	10.0.0.54		mysql5.7	从

配置步骤:
[master]
1.编写配置文件,添加主从必须的配置
vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/mysql
datadir=/data/mysql/data
log_error=/data/mysql/data/mysql.log
log_bin=/data/mysql/binlog/mysql-bin
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock

2.重启mysqld,让配置生效
systemctl restart mysqld

3.使用mysqldump全备主库数据
mysqldump -AR --triggers --single-transaction --master-data=2 > /tmp/master.sql

4.创建授权主从复制的用户
grant replication slave on *.* to 'repl'@'10.0.0.54' identified by '123';

5.将全备文件拷贝到从库上
scp /tmp/master.sql 10.0.0.54:/tmp/

[slave]
1.编写配置文件,添加主从必须的配置
vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/mysql
datadir=/data/mysql/data
log_error=/data/mysql/data/mysql.log
log_bin=/data/mysql/binlog/mysql-bin
server_id=7
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock

2.重启mysqld,让配置生效
systemctl restart mysqld

3.导入主的全备
#1.登录
mysql 

#2.临时关闭binlog
set sql_log_bin=0;

#3.导入全备
source /tmp/master.sql;

4.查看position及对应的binlog文件
awk "NR==22" /tmp/master.sql

5.配置主库信息
CHANGE MASTER TO
  MASTER_HOST='10.0.0.51',
  MASTER_USER='repl',
  MASTER_PASSWORD='123',
  MASTER_PORT=3306,
  MASTER_LOG_FILE='mysql-bin.000003',
  MASTER_LOG_POS=4602;

6.启动从库
start slave;

7.查看从库状态
show slave status\G

怎么修改UUID
1.生成随机的UUID
mysql> select UUID();

2.修改
vim /data/mysql/data/auto.cnf 
[auto]
server-uuid=97320a42-b07c-11ee-a6a9-000c29a73a2c

延时从库

普通的主从复制可能存在不足
1)逻辑损坏怎么办?
2)不能保证主库的操作,从库一定能做
3)高可用?自动failover?
4)过滤复制
一般会延时3-6小时 延时从库配置方法

延时从库的配置
#停止主从
mysql>stop slave;
#设置延时为180秒
mysql>CHANGE MASTER TO MASTER_DELAY = 180;
#开启主从
mysql>start slave;
#查看状态
mysql> show slave status \G
SQL_Delay: 60
3.延时从库停止方法
#停止主从
mysql> stop slave;
#设置延时为0
mysql> CHANGE MASTER TO MASTER_DELAY = 0;
#开启主从
mysql> start slave;

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Chrome插件 | WEB 网页数据采集和爬虫程序

无边无形的互联网遍地是数据,品类丰富、格式繁多,包罗万象。数据采集,或说抓取,就是把分散各处的内容,通过各种方式汇聚一堂,是个有讲究要思考的体力活。君子爱数,取之有道,得注意遵…

Tomcat 架构

一、Http工作原理 HTTP协议是浏览器与服务器之间的数据传送协议。作为应用层协议,HTTP是基于TCP/IP协议来传递数据的(HTML文件、图片、查询结果等),HTTP协议不涉及数据包(Packet)传输,主要规定了…

Ai-WB2-32S在window下使用vs 和 msys2编译以及烧录

文章目录 前言一、使用前准备第一步 安装vscode第二步 安装msys2 二、使用步骤1.打开MSYS2 MINGW64(1)在开始栏中找到MSYS2 MINGW64并打开(2)安装git(3)安装make(4)安装好之后的文件…

端游如何防破解

在2023年这个游戏大年中,诸多热门大作涌现,作为世界级IP哈利哈利波特的衍生游戏——《霍格沃茨之遗》毫无悬念地成为2023年游戏圈的首款爆款作品,斩获了一众玩家的青睐。 在众多光环的加持下,《霍格沃茨之遗》很快被著名游戏破解…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《激发多元灵活性的数据中心协同优化运行方法》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 这篇文章标题表明,其主题…

网络防御第6次作业

防病毒网关 按照传播方式分类 病毒 病毒是一种基于硬件和操作系统的程序,具有感染和破坏能力,这与病毒程序的结构有关。病毒攻击的宿主程序是病毒的栖身地,它是病毒传播的目的地,又是下一次感染的出发点。计算机病毒感染的一般过…

持安科技亮相张江高科895创业营,总评分第三名荣获「最具创新性企业」!

近日,张江高科895创业营(第十三季)信息安全专场Demo day&结营仪式在上海集成电路设计产业园圆满落幕。本季创业营通过多种渠道在海内外甄选优秀创业项目,一共择优录取了29家入营,最终甄选出9家代表参加Demo day路演…

安装ProxySQL,教程及安装链接(网盘自提)

一、网盘下载,本地直传 我网盘分享的是proxysql-2.5.5-1-centos8.x86_64.rpm,yum或者dnf直接安装就行 提取码:rhelhttps://pan.baidu.com/s/1nmx8-h8JEhrxQE3jsB7YQw 官方安装地址 官网下载地址https://repo.proxysql.com/ProxySQL/ 二、…

c# cad2016系统变量解释说明

一、cad系统变量设置和获取 /// <summary> /// 设置CAD系统变量 /// </summary> /// <param name"name">变量名</param> /// <param name"value">变量值</param> public static void SetSystemVariable(string name,…

[pdf]《软件方法》2024版部分公开-共196页

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 潘加宇《软件方法》2024版部分公开pdf文件&#xff0c;共196页&#xff0c;已上传CSDN资源。 也可到以下地址下载&#xff1a; http://www.umlchina.com/url/softmeth2024.html 如果…

DDOS攻击处理方法

DDoS&#xff08;分布式拒绝服务&#xff09;攻击是一种网络攻击&#xff0c;攻击者通过发送大量的请求&#xff0c;超过目标服务器的处理能力&#xff0c;导致服务器服务不可用。本文将介绍如何处理DDoS攻击&#xff0c;并提供几种防范措施。 1. 认识DDoS攻击 DDoS攻击通常通过…

JAVA对象内存模型

Java对象内存模型 > 一个Java对象在内存中包括3个部分&#xff1a;对象头、实例数据和对齐填充 > > 数据 内存 – CPU 寄存器 -127 补码 10000001 - 11111111 32位的处理器 一次能够去处理32个二进制位 4字节的数据 64位操作系统 8字节 2的64次方的寻址空间 指针压…

mac 本地使用dockerfile启动 springboot项目

1.创建Dockerfile放在项目的根目录下 2.编写Dockerfile FROM openjdk:11 MAINTAINER ChengLinADD target/JiaLi-0.0.1-SNAPSHOT.jar /app.jar# 暴露 Spring Boot 应用的端口号 EXPOSE 8088 # 启动 Spring Boot 应用 CMD ["java", "-jar", "app.jar&q…

机器学习 | 模型性能评估

目录 一. 回归模型的性能评估1. 平均平方误差(MSE)2. 平均绝对误差(MAE)3. R 2 R^{2} R2 值3.1 R 2 R^{2} R2优点 二. 分类模型的性能评估1. 准确率&#xff08;Accuracy&#xff09;2. 召回率&#xff08;Recall&#xff09;3. 精确率&#xff08;Precision&#xff09;4. …

【测试开发面试复习(一)】计算机网络:应用层详解(P2)补充ing

复习自用&#xff0c;若有错漏&#xff0c;欢迎一起交流一下~~ 一、高频面试题记录 uri 和 url 的区别 &#xff1f; dns 是啥工作原理&#xff0c;主要解析过程是啥&#xff1f; 用户输入网址到显示对应页面的全过程是啥&#xff1f; http 头部包含哪些信息&#xff1f; http…

水电站泄洪预警系统解决方案

水电站建立的初衷有两个&#xff0c;一是用于发电&#xff0c;二是用于调节水量&#xff0c;解决下游洪涝灾害。水电站在丰水期蓄水、枯水期泄洪&#xff0c;泄洪时产生的水流又急又大&#xff0c;对电站大坝及下游存在巨大危险。为了加强水电站工程安全管理&#xff0c;保证水…

使用 llama.cpp 在本地部署 AI 大模型的一次尝试

对于刚刚落下帷幕的2023年,人们曾经给予其高度评价——AIGC元年。随着 ChatGPT 的火爆出圈,大语言模型、AI 生成内容、多模态、提示词、量化…等等名词开始相继频频出现在人们的视野当中,而在这场足以引发第四次工业革命的技术浪潮里,人们对于人工智能的态度,正从一开始的…

MySQL 多表查询 连接查询 内连接

介绍 内连接查询是两张表中交集的部分 连接模式 隐式内连接 SELECT 字段列表 FROM 表1,表2 WHERE 条件显式内连接 SELECT 字段列表 FROM 表1 [INNER] JOIN 表2 ON 连接条件案例 有两张表一个表为学生表&#xff0c;另一个表为班级表&#xff0c;现在需要查询学生时候在查…

matplotlib.animation 3d姿态动画

目录 演示效果&#xff1a; 演示代码&#xff1a; 保存为gif 演示效果&#xff1a; 演示代码&#xff1a; import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from matplotlib.animation import FuncAnimation# 定义人体关键点…

Python读取hbase数据库

1. hbase连接 首先用hbase shell 命令来进入到hbase数据库&#xff0c;然后用list命令来查看hbase下所有表&#xff0c;以其中表“DB_level0”为例&#xff0c;可以看到库名“baotouyiqi”是拼接的&#xff0c;python代码访问时先连接&#xff1a; def hbase_connection(hbase…