centos7 xtrabackup mysql(8)增量备份(1)

centos7 xtrabackup mysql(8)增量备份(1)

参考

xtrabackup-8.0的安装、备份以及恢复(innoxtrabackup有待测试)
https://blog.csdn.net/DWJRIVER/article/details/117792271

https://blog.csdn.net/qq_28721869/article/details/118853884

在 master 192.168.99.40 上面做增量备份

1.2 Xtrabackup 系列版本
目前 Xtrabackup 活跃的大版本有三个:

Xtrabackup 2.4 适用于 MySQL 5.6 和 MySQL 5.7。
Xtrabackup 8.0 适用于 MySQL 8.0。
Xtrabackup 8.1 适用于 MySQL 8.1。

Xtrabackup与mysqldump区别
Xtrabackup属于物理备份,mysqldump属于逻辑备份。
Xtrabackup占用的CPU与内存较少,消耗的IO相对较大,备份后的文件较大。

通过mysql自带的工具mysqldump进行逻辑备份和恢复,虽然可以节省磁盘空间,但是速度很慢。

查看版本:

xtrabackup --version

安装 方法

 wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.26/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.26-1.el7.x86_64.rpmsudo yum localinstall -y ./percona-xtrabackup-24-2.4.26-1.el7.x86_64.rpmxtrabackup --versionxtrabackup: recognized server arguments: --datadir=/opt/datadir/mysql/ --server-id=40 --log_bin=mysql-bin
xtrabackup version 2.4.26 based on MySQL server 5.7.35 Linux (x86_64) (revision id: 19de43b)

mysql -u root -p
1234aA~1

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.44-log MySQL Community Server (GPL)Copyright (c) 2000, 2023, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>

my.cnf

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
#datadir=/var/lib/mysql
datadir=/opt/datadir/mysql/
socket=/opt/datadir/mysql/mysql.sock
#socket=/var/lib/mysql/mysql.sock# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#for zhu and chong
server-id=40
log-bin=mysql-bin
binlog_format=mixed
binlog_do_db=company_pro
binlog_do_db=company_service[client]
socket=/opt/datadir/mysql/mysql.sock

sudo mkdir /data

sudo mkdir -p /data/backup0726

全量备份

sudo xtrabackup --backup --target-dir=/data/backup0726/full_backup --user=root --password=1234aA~1 --socket=/opt/datadir/mysql/mysql.sock

会自动在/data/backup0726/目录下面创建full_backup目录

添加数据1

添加数据测试一下
测试主从是否可以

主机端
mysql -u root -p
1234aA~1

show databases ;
use company_pro;
show tables ;
insert into employee(name) value (‘20240726’);

从机端 查看
mysql -u root -p
1234aA~1
show databases ;
use company_pro;
show tables ;
select * from employee ;

增量备份1

sudo xtrabackup --backup --target-dir=/data/backup0726/inc_0727_backup --incremental-basedir=/data/backup0726/full_backup --user=root --password=1234aA~1 --socket=/opt/datadir/mysql/mysql.sock

添加数据2

添加数据测试一下
测试主从是否可以

主机端
mysql -u root -p
1234aA~1

show databases ;
use company_pro;
show tables ;
insert into employee(name) value (‘20240726’);

增量备份2

sudo xtrabackup --backup --target-dir=/data/backup0726/inc_0728_backup --incremental-basedir=/data/backup0726/inc_0727_backup --user=root --password=1234aA~1 --socket=/opt/datadir/mysql/mysql.sock

查看一下数据

在这里插入图片描述

如何恢复数据

sudo systemctl stop mysqld

在这里插入图片描述
datadir=/opt/datadir/mysql/

vi /etc/my.cnf

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
#datadir=/var/lib/mysql
datadir=/opt/datadir/mysql/
socket=/opt/datadir/mysql/mysql.sock
#socket=/var/lib/mysql/mysql.sock# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#for zhu and chong
server-id=40
log-bin=mysql-bin
binlog_format=mixed
binlog_do_db=company_pro
binlog_do_db=company_service[client]
socket=/opt/datadir/mysql/mysql.sock

cd ~
sudo cp -r /opt/datadir/mysql /opt/datadir/bak_mysql

sudo rm -rf /opt/datadir/mysql/*

mkdir /home/jack/test
cd /home/jack/test

sudo xtrabackup --prepare --apply-log-only --target-dir=/data/backup0726/full_backup
sudo xtrabackup --prepare --apply-log-only --target-dir=/data/backup0726/full_backup --incremental-dir=/data/backup0726/inc_0727_backup
sudo xtrabackup --prepare --target-dir=/data/backup0726/full_backup --incremental-dir=/data/backup0726/inc_0728_backup
sudo xtrabackup --copy-back  --target-dir=/data/backup0726/full_backupsudo chown -R mysql.mysql /opt/datadir/mysql/*sudo systemctl restart mysqld

查看数据

mysql -u root -p
1234aA~1
show databases ;
use company_pro;
show tables ;
select * from employee ;

数据是对的

但是 从数据这个时候是 连接不上的

show slave status\G

需要

stop slave ;
change master to
master_host='192.168.99.40',
master_user='mysqlsyn',
master_password='1234aA~1',
master_log_file='mysql-bin.000001',
master_log_pos=524;
start slave ;
show slave status\G

master_log_file=‘mysql-bin.000001’,
master_log_pos=524;
这个信息是通过
show master status;
得来的

没有连接上之前的数据会被漏掉
所在在 slave连接上之前不能增删数据。

这个地方是一个问题啊
从机在运行的过程中,如果挂掉了,然后再重启,两者的,
在挂掉到重启之间的 这个时间段,如果有数据出现,从机会收不到。
从机会漏掉这部分数据,对吧。

下一步写一个脚本

MySQL8的备份方案——增量备份(CentOS)
https://blog.csdn.net/thetender/article/details/140388464

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

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

相关文章

开发环境搭建——Tomcat安装配置

一、Tomcat安装 1、解压下载好的安装包,将解压后的文件放到任意一个盘中,注意,尽量不要有中文 2、运行Tomcat,测试Tomcat是否正常连接使用 双击bin目录下的startup.bat文件,启动Tomcat 出现下面的界面标识Tomcat启动…

顺序栈和链栈的操作实现

目录 一. 前言 二.顺序栈 三. 链栈 一. 前言 简而言之,顺序栈就是栈的顺序存储,链栈就是栈的链式存储。 二.顺序栈 下面我们来看下顺序栈的结构定义: typedef char SElemType; #define MAXSIZE 100 typedef struct{SElemType * base; //…

使用git命令行的方式,将本地项目上传到远程仓库

在国内的开发环境中,git的使用是必不可少的。Git 是一款分布式版本控制系统,用于有效管理和追踪文件的变更历史及协作开发。本片文章就来介绍一下怎样使用git命令行的方式,将本地项目上传到远程仓库,虽然现在的IDE中基本都配置了g…

SPI 通信协议

文章目录 一 简介二 特点三 接口四 时钟极性和时钟相位五 优缺点 一 简介 ​ SPI (Serial Perripheral Interface),是由 Motorola 公司推出的一种高速、全双工的总线协议。SPI 采用主从方式工作,一般由 SCLK、CS、MOSI、MISO 四根线组成,主机…

DNS劫持实验

实验背景 利用ettercap进行DNS欺骗,攻击者冒充域名服务器,也就是把查询的IP地址设为攻击者 的IP地址,这样用户上网就只能看到攻击者设计的网页。 实验设备 一个网络 net:cloud0 一台模拟黑客主机 kali 一台靶机 windows 主机 实验拓扑 …

数字货币MACD指标自动化交易策略实现(含源代码)

数字货币MACD指标自动化交易策略实现(含源代码) 前情回顾MACD 策略逻辑代码实现代码说明 增加仓位管理逻辑代码实现修改说明 增加风险控制功能代码实现修改说明 前情回顾 在前面我们实现了2中方法进行数字货币交易,同时还能获取到实时行情。…

机器学习之人脸识别-使用 scikit-learn 和人工神经网络进行高效人脸识别

文章摘要 本文将介绍如何使用 Python 的 scikit-learn 库和人工神经网络(ANN)来识别人脸。我们将使用 LFW 数据集(Labeled Faces in the Wild),这是一个广泛用于人脸识别基准测试的大型人脸数据库。我们将展示如何准备…

【微软蓝屏】构建更加稳固和安全的网络环境:从“微软蓝屏”事件谈起

最近,那个让全球都头疼的“微软蓝屏”事件,简直就像是科技界的一场大地震。你说这背后的原因,竟然是一个软件更新的小失误?哎呀,这可真是让人哭笑不得。不过,笑归笑,这事儿也给我们提了个醒&…

nodejs - express 学习笔记

express 是一个基于 Node.js 平台的极简、灵活的 WEB 应用开发框架,官方网址:https://www.expressjs. com.cn/ 简单来说,express 是一个封装好的工具包,封装了很多功能,便于我们开发 WEB 应用(HTTP 服务&am…

MOE模式:或将是最好的大模型应用开发路径

大模型相关目录 大模型,包括部署微调prompt/Agent应用开发、知识库增强、数据库增强、知识图谱增强、自然语言处理、多模态等大模型应用开发内容 从0起步,扬帆起航。 基于Dify的智能分类方案:大模型结合KNN算法(附代码&#xff…

TiDB-从0到1-sync-diff-inspector数据校验工具

TiDB从0到1系列 TiDB-从0到1-体系结构TiDB-从0到1-分布式存储TiDB-从0到1-分布式事务TiDB-从0到1-MVCCTiDB-从0到1-部署篇TiDB-从0到1-配置篇TiDB-从0到1-集群扩缩容TiDB-从0到1-数据导出导入TiDB-从0到1-BR工具 一、sync-diff-inspector工具 sync-diff-inspector是TiDB原生…

3.仓颉编程_没有switch_case需使用match_case

仓颉编程_没有switch_case需使用match_case 支持两种 match 表达式,一种是包含待匹配值的 match 表达式,另一种是不含待匹配值的 match 表达式。 含有匹配值的 match 表达式 main() {let a Hello World!//不可变量var a2 var b 77 //可变变量match(b…

指针!!C语言(第三篇)

目录 一. 二维数组传参的本质 二. 函数指针变量和函数指针数组 三. typedef关键字 四. 转移表 五. 回调函数以及qsort使用举例 一. 二维数组传参的本质 🍟首先我们先回顾一下二维数组是怎样传参的?我们需要传入数组名以及行数和列数,这…

Spring Boot|如何实现 Spring Boot 的优雅停机

文章目录 概述优雅停机的重要性实现优雅停机的方法1. 使用Spring Boot Actuator配置使用 2. 自定义Shutdown Hook示例代码 3. 使用Spring Boot 2.3及更高版本的优雅停机特性配置 4. 通过Spring Cloud Gateway和Ribbon示例配置 5. 定制化停机逻辑示例代码 最佳实践结论 概述 在…

Dhtmlx Gantt教程:创建交互式甘特图的完整指南

在现代的项目管理中,时间是一种宝贵的资源,而甘特图则是一把解锁项目进度的魔法钥匙,想象一下,您可以在一个直观而动态的时间轴上,清晰地看到项目的每一个任务如何交织在一起,如何随着时间的推移展开&#…

【优质精选】12节大模型系列教学课程之二:RAG 原理与应用

课程二:RAG 原理与应用 12节大模型系列教学课程之二:RAG 原理与应用 课程详细内容RAG 技术的基础知识RAG 的工作原理RAG 提高生成质量和准确性的原理RAG 在问答系统中的应用RAG 在文本创作中的应用RAG 在其他领域的应用探索RAG 技术的挑战与应对策略RAG …

代码随想录算法训练营【动态规划篇】

动态规划 注:本文代码来自于代码随想录 509. 斐波那契数 力扣509 Python 动态规划(版本一) class Solution:def fib(self, n: int) -> int:# 排除 Corner Caseif n 0:return 0# 创建 dp table dp [0] * (n 1)# 初始化 dp 数组dp[0]…

LangChain4j-RAG高级-检索增强器

Retrieval Augmentor 检索增强器 RetrievalAugmentor 是 RAG 管道的入口点。它负责使用从各种来源检索的相关 Content 来扩充 ChatMessage 。 可以在创建 AiService 期间指定 RetrievalAugmentor 的实例: Assistant assistant AiServices.builder(Assistant.cla…

探索大型语言模型LLama 2:原理揭秘与代码实践

一、引言 1.1 大型语言模型的重要性 大型语言模型作为人工智能领域的重要研究方向,近年来取得了显著的成果。这些模型在自然语言处理、机器翻译、对话系统、文本生成等领域展现了强大的能力,为人类带来了诸多便利。大型语言模型的出现,使得…

初识git工具~~上传代码到gitee仓库的方法

目录 1.背景~~其安装 2.gitee介绍 2.1新建仓库 2.2进行相关配置 3.拉取仓库 4.服务器操作 4.1克隆操作 4.2查看本地仓库 4.3代码拖到本地仓库 4.4关于git三板斧介绍 4.4.1add操作 4.4.2commit操作 4.4.3push操作 5.一些其他说明 5.1.ignore说明 5.2git log命令 …