【MySQL备份】Percona XtraBackup基础篇

news2025/1/11 10:04:01

目录

1.关于Percona XtraBackup

2. Percona XtraBackup有哪些特点?

3.安装Percona XtraBackup

3.1.环境信息

3.2.安装步骤 

 4. xtrabackup内部流程图

5.Percona XtraBackup基础语法

5.1.全量备份

5.2.增量备份

5.2.1.基于全量备份的增量备份

5.2.2.基于前一个增量备份的增量备份

5.2.3.备份准备

5.3.数据恢复

6.总结 


1.关于Percona XtraBackup

Percona XtraBackup是世界上唯一的开源、免费的MySQL热备份 为InnoDB和XtraDB执行非阻塞备份的软件 数据库。使用Percona XtraBackup,您可以获得以下好处:

  • 快速可靠地完成备份

  • 备份期间不中断的事务处理

  • 节省磁盘空间和网络带宽

  • 自动备份验证

  • 更快的恢复时间导致更高的延迟

2. Percona XtraBackup有哪些特点?

以下是Percona XtraBackup功能的简短列表。

  • 创建热InnoDB备份而无需暂停数据库

  • 对MySQL进行增量备份

  • 将压缩的MySQL备份流式传输到另一台服务器

  • 在线在MySQL服务器之间移动表

  • 轻松创建新的MySQL复制副本

  • 备份MySQL而不增加服务器负载

  • 备份锁是Percona Server 5.6+中可用的FLUSH TABLES WITH READ LOCK的轻量级替代方案。Percona XtraBackup使用它们自动复制非InnoDB数据,以避免阻塞修改InnoDB表的DML查询。

  • Percona XtraBackup根据每秒IO操作数执行限制。

  • Percona XtraBackup跳过辅助索引页,并在准备紧凑备份时重新创建它们。

  • Percona XtraBackup甚至可以从完整备份中导出单个表,无论InnoDB版本如何。

  • 使用Percona XtraBackup导出的表可以导入Percona Server 5.1、5.5或5.6+或MySQL 5.6+。

3.安装Percona XtraBackup

3.1.环境信息

主机IP操作系统Mysql版本XtraBackup版本
172.17.0.2CentOS Stream release 98.0.378.0.35

3.2.安装步骤 

Percona XtraBackup的安装方法有三中YUM仓库安装,RPM包安装,源码编译安装,下面介绍到的是YUM仓库安装

  1. root用户身份或使用sudo运行以下命令来安装Percona yum仓库:

    sudo yum install \
    https://repo.percona.com/yum/percona-release-latest.\
    noarch.rpm
  2. 启用存储库:

    sudo percona-release enable-only tools release

    如果Percona XtraBackup预期与 上游MySQL服务器,只需要开启`tools仓库:

    sudo percona-release enable-only tools
  3. 通过运行以下命令安装Percona XtraBackup:

    sudo yum install percona-xtrabackup-80

    警告:

    在CentOS 6上安装Percona XtraBackup之前,请确保安装了libev软件包。对于此操作系统,可以从EPEL存储库中获得libev包。

  4. 要对使用LZ4ZSTD压缩算法进行的备份进行重新编译,请安装相应的软件包:

    sudo yum install zstd

 4. xtrabackup内部流程图

5.Percona XtraBackup基础语法

Percona XtraBackup 提供了一系列丰富的命令行选项来执行MySQL和Percona Server的热备份操作。以下是一些基本和常用的语法示例,涵盖了全量备份、增量备份、备份准备和恢复等操作:

5.1.全量备份

xtrabackup --backup --user=root --password=<your_password> \ 2 --host=<hostname_or_ip> --port=<port_number> \ 3 --target-dir=<backup_directory>
  • --backup 表示执行备份操作。
  • --user 和 --password 分别指定MySQL的用户名和密码。
  • --host 和 --port 指定MySQL服务器的地址和端口。
  • --target-dir 指定备份文件存放的目录。

5.2.增量备份

5.2.1.基于全量备份的增量备份

xtrabackup --backup --incremental-basedir=<full_backup_directory> \ 2 --target-dir=<incremental_backup_directory> \ 3 --user=root --password=<your_password> \ 4 --host=<hostname_or_ip> --port=<port_number>
  • --incremental-basedir 指定增量备份基于的全量备份目录。

5.2.2.基于前一个增量备份的增量备份

xtrabackup --backup --incremental-basedir=<previous_incremental_backup_directory> \ 2 --target-dir=<new_incremental_backup_directory> \ 3 --user=root --password=<your_password> \ 4 --host=<hostname_or_ip> --port=<port_number>

5.2.3.备份准备

对于全量备份,执行以下命令准备数据以便恢复:

xtrabackup --prepare --apply-log-only --target-dir=<backup_directory>

对于增量备份链,需要先对全量备份进行准备,然后依次对每个增量备份执行准备操作,最终对整个链进行最终的准备:

xtrabackup --prepare --apply-log-only --target-dir=<prepared_full_backup_directory> \ 2 --incremental-dir=<incremental_backup_directory>

5.3.数据恢复

将准备好的备份数据恢复到MySQL数据目录:

# 先停止MySQL服务
sudo systemctl stop mysql

# 将备份数据复制到MySQL数据目录(示例使用全量备份)
rsync -avP <prepared_backup_directory>/ /var/lib/mysql/

# 调整文件权限和属主
chown -R mysql:mysql /var/lib/mysql/

# 启动MySQL服务
sudo systemctl start mysql

6.总结 

本篇文章介绍了Percona XtraBackup工具的安装、使用以及原理,后面会发布Percona XtraBackup的实战篇

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

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

相关文章

Java学习 (六) 面向对象--this、继承、方法重写、super

一、this 关键字 1、this 演示 vi Person.java public class Person {String name;int age;//显示声明构造器public Person(String s , int i){name s;age i;}public void setAge(int age){age age;}}vi PersonTest.java public class PersonTest {public static void m…

nextTick的应用和原理理解

一.代码的理解 <template><div id"app"><div></div><button click"fn" ref"box"> {{ name }}</button></div> </template><script> export default {data: function () {return {n…

【Linux】计算机网络基础:协议、分层结构与数据传输解析

文章目录 前言1. 认识“协议”1.1. 什么是协议1.2. 网络分层结构——网络 vs OS之间的关系1.2.1. 软案分层1.2.2. 网络分层(为什么&#xff1f;是什么&#xff1f;怎么办&#xff1f;) 1.3. 站在语言角度&#xff0c;重新理解协议 2. 网络传输基本流程3. 数据包封装和分用4. 网…

【剑指Offer系列】68-二叉树的最近公共祖先(哈希)

思路&#xff1a;使用map存储每个节点的父节点&#xff0c;则两个节点的最近公共祖先&#xff0c;即二者的最近父节点 1、中序遍历二叉树&#xff08;当前节点的下一个节点&#xff09; 2、记录每个节点的父节点 3、列出p的族谱、q的族谱 4、寻找二者最近的祖先 class Soluti…

安装 Docker 环境(通过云平台创建一个实例实现)

目录 1. 删除原有 yum 2. 手动配置 yum 源 3. 删除防火墙规则 4. 保存防火墙配置 5. 修改系统内核。打开内核转发功能。 6. 安装 Docker 7. 设置本地镜像仓库 8.重启服务 1. 删除原有 yum rm -rfv /etc/yum.repos.d/* 2. 手动配置 yum 源 使用 centos7-1511.iso 和 Xi…

《Programming from the Ground Up》阅读笔记:p1-p18

《Programming from the Ground Up》学习第1天&#xff0c;p1-18总结&#xff0c;总计18页。 一、技术总结 1.fetch-execute cycle p9, The CPU reads in instructions from memory one at a time and executes them. This is known as the fetch-execute cycle。 2.genera…

安防监控视频平台LntonCVS视频融合共享平台水电站视频智能监控系统的设计与特点

水电站作为重要的能源基地&#xff0c;其安全运行对保障能源供应和社会稳定至关重要。然而&#xff0c;传统的人工监控方式存在高成本、监控范围有限和反应速度慢等问题。因此&#xff0c;引入先进的视频智能监控系统成为当务之急&#xff0c;以提高效率和安全性。 安徽羚通科技…

Anti-C-Myc Antibody (Chicken) - FITC Conjugated

C-myc基因是myc基因家族的重要成员之一&#xff0c;是一种可使细胞无限增殖&#xff0c;获永生化功能&#xff0c;促进细胞分裂的基因&#xff0c;c-myc基因与多种肿瘤发生发展有关。C-myc基因定位于染色体8q24、IgH、IgK、Igλ链的基因位点分别在14q32、2P13和 22q11&#xff…

SeeSR: Towards Semantics-Aware Real-World Image Super-Resolution

CVPR2024 香港理工大学&OPPO&bytedancehttps://github.com/cswry/SeeSR?tabreadme-ov-file#-licensehttps://arxiv.org/pdf/2311.16518#page5.80 问题引入 因为有些LR退化情况比较严重&#xff0c;所以超分之后的结果会出现语义的不一致的情况&#xff0c;所以本文训…

模拟电子学基本概念+Keil5安装指南!!

2024-7-1&#xff0c;星期一&#xff0c;16:56&#xff0c;天气&#xff1a;阴转小雨&#xff0c;心情&#xff1a;晴。大家好啊&#xff0c;今天换了一个新的主题&#xff0c;为什么嘞&#xff0c;是因为截止到昨天&#xff0c;电路基础部分的内容已经暂时告一段落啦&#xff…

高斯过程的数学理解

目录 一、说明 二、初步&#xff1a;多元高斯分布 三、 线性回归模型与维度的诅咒 四、高斯过程的数学背景 五、高斯过程的应用&#xff1a;高斯过程回归 5.1 如何拟合和推理高斯过程模型 5.2 示例&#xff1a;一维数据的高斯过程模型 5.3 示例&#xff1a;多维数据的高斯过程模…

奔驰G350升级原厂自适应悬挂系统有哪些作用

奔驰 G350 升级自适应悬挂系统后&#xff0c;可根据行车路况自动调整悬架高度和弹性&#xff0c;从而提升驾乘的舒适性和稳定性。 这套系统的具体功能包括&#xff1a; • 多种模式选择&#xff1a;一般有舒适、弯道、运动及越野等模式。例如&#xff0c;弯道模式在过弯时能为…

自定义vue3 hooks

文章目录 hooks目录结构demo hooks 当页面内有很多的功能&#xff0c;js代码太多&#xff0c;不好维护&#xff0c;可以每个功能都有写一个js或者ts&#xff0c;这样的话&#xff0c;代码易读&#xff0c;并且容易维护&#xff0c;组合式setup写法与此结合&#x1f44d;&#…

如何设置农历日程提醒 农历提醒小妙招

在中国&#xff0c;农历仍然承载着深厚的文化传统和民俗意义。无论是庆祝传统节日&#xff0c;还是纪念亲朋的生日&#xff0c;农历日期都显得格外重要。然而&#xff0c;随着生活节奏的加快&#xff0c;我们有时会因忙碌而遗忘这些特殊的日子。这时&#xff0c;一个能够准确提…

提升写作效率:探索AI在现代办公自动化中的应用

工欲善其事&#xff0c;必先利其器。 随着AI技术与各个行业或细分场景的深度融合&#xff0c;日常工作可使用的AI工具呈现出井喷式发展的趋势&#xff0c;AI工具的类别也从最初的AI文本生成、AI绘画工具&#xff0c;逐渐扩展到AI思维导图工具、AI流程图工具、AI生成PPT工具、AI…

二维码中的文件如何列表排列?轻松在线做文件活码的简单技巧

现在二维码是常用来展示文件的手段之一&#xff0c;将文件生成二维码之后扫码就能够快速在手机上查看文件内容&#xff0c;减少了下载内存占用及传输的时间&#xff0c;通过这种方式可以更加方便快捷的获取文件内容。怎么把多个文件用列表的方式来扫码展示呢&#xff1f; 多个…

Golang开发:构建支持并发的网络爬虫

Golang开发&#xff1a;构建支持并发的网络爬虫 随着互联网的快速发展&#xff0c;获取网络数据成为了许多应用场景中的关键需求。网络爬虫作为一种自动化获取网络数据的工具&#xff0c;也因此迅速崛起。而为了应对日益庞大的网络数据&#xff0c;开发支持并发的爬虫成为了必…

销量位列第一!强力巨彩LED单元板成绩斐然

据全球知名科技研究机构Omdia《LED显示产品出货分析-中国-2023》报告显示&#xff0c;2023年强力巨彩LED显示屏销量与单元板产品销量均位列第一&#xff0c;其品牌和市场优势可见一斑。 厦门强力巨彩自2004年成立之初&#xff0c;便以技术创新和严格品控为核心竞争力&#xff0…

nodejs--【Express基本使用】

10 【Express基本使用】 https://www.expressjs.com.cn/ 基于 Node.js 平台&#xff0c;快速、开放、极简的 web 开发框架。 1.Express的安装方式 Express的安装可直接使用npm包管理器上的项目&#xff0c;在安装npm之前可先安装淘宝镜像&#xff1a; npm install -g cnpm -…