news 2026/8/7 23:31:10

15、XtraBackup

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
15、XtraBackup

安装XtraBackup

官方文档: https://docs.percona.com/percona-xtrabackup/8.0/

https://www.percona.com/downloads#percona-xtrabackup


Percona XtraBackup

A hot backup solution for MySQL

Select Product

Package Download Options:

percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17-minimal.tar.gz
percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17-minimal.tar.gz.sho256sum
percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17.tar.gz
percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17.tar.gz.sho256sum

User Manual Documentation


# 创建安装目录sudomkdir-p /usr/local/xtrabackup# 解压到安装目录sudotar-xzvf percona-xtrabackup-8.0.35-30-Linux-x86_64.glibc2.17.tar.gz -C /usr/local/xtrabackup --strip-components=1# 创建符号链接到系统 PATHsudoln-sf /usr/local/xtrabackup/bin/* /usr/local/bin/# 验证安装xtrabackup --version
# ls bin/ xbcloud xbcloud_osenv xbcrypt xbstream xtrabackup

各个文件的具体作用如下:

  • xbcloud: 与流式备份相结合,将备份存储到云服务的对象存储上。
  • xbcloud_osenv: 对 xbcloud 进行了二次封装,可自动读取 OpenStack 环境中的 OS_xxx 变量。
  • xbcrypt: 用来加解密。
  • xbstream: 用来解压流式备份集。
  • xtrabackup: 大家常用的备份恢复工具。

创建备份用户

备份用户需要以下权限:

  1. RELOAD:用于执行 FLUSH TABLES WITH READ LOCK 和 FLUSH NO_WRITE_TO_BINLOG TABLES,必需权限。

  2. REPLICATION CLIENT:用于执行 SHOW MASTER STATUS,必需权限。如果是在从库进行备份,还需要执行 SHOW SLAVE STATUS。

  3. BACKUP_ADMIN:用于执行 LOCK INSTANCE FOR BACKUP,必需权限。在 MySQL 5.7 中无需设置。

  4. PROCESS:用于执行 SHOW ENGINE INNODB STATUS,SHOW PROCESSLIST,必需权限。

  5. SYSTEM_VARIABLES_ADMIN:增量备份时执行 SET GLOBAL mysqlbackup_backupid=xxx 操作,非必需权限。在 MySQL 5.7 中无需设置。

  6. SUPER:非必需权限。两种场景下需要:

    • 指定了--kill-long-queries-timeout,需要 KILL 慢查询。
    • 从库备份指定了--safe-slave-backup,需要重启复制。
  7. SHOW VIEW:在 XtraBackup 8.0 中,会通过下面这个 SQL 来判断备份实例中是否存在 MyISAM 表。如果有则加全局读锁。对于一个普通用户,查询 INFORMATION_SCHEMA.TABLES,只能看到 information_schema 库中的表信息。如果要查看其它表,需要该表级别权限,常用的是 SELECT 权限,但 SELECT 权限能读取表中的数据,不满足合规要求。所以就选择了 SHOW VIEW 这个既能满足需求,又无实际影响的表级别权限。在 MySQL 5.7 中无需设置。

    SELECTCOUNT(*)FROMinformation_schema.tablesWHEREengine='MyISAM'ORengine='RocksDB'
  8. 如果使用了 Page Tracking 来进行增量备份,还需要 mysql.component 的查询权限。在 MySQL 5.7 中无需设置。

  9. 如果指定了--history,还需要 PERCONA_SCHEMA.xtrabackup_history 的 SELECT, INSERT, CREATE, ALTER 权限。

具体的授权语句如下:

CREATEUSER`backup_user`@`localhost`IDENTIFIEDBY`backup_pass`;GRANTRELOAD,PROCESS,SHOWDATABASES,REPLICATIONCLIENT,SHOWVIEWON*.*TO`backup_user`
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/7 23:06:38

VeraCrypt终极指南:5分钟掌握磁盘加密完整流程

VeraCrypt终极指南:5分钟掌握磁盘加密完整流程 【免费下载链接】VeraCrypt Disk encryption with strong security based on TrueCrypt 项目地址: https://gitcode.com/GitHub_Trending/ve/VeraCrypt VeraCrypt作为TrueCrypt的继任者,提供了企业级…

作者头像 李华
网站建设 2026/8/7 5:11:46

ENSP抓包分析GPT-SoVITS API通信数据格式

ENSP抓包分析GPT-SoVITS API通信数据格式 在智能语音系统日益普及的今天,越来越多的企业和开发者开始将AI语音合成技术集成到实际业务中。然而,当模型从本地训练环境走向服务化部署时,一个常被忽视的问题浮出水面:API接口到底在“…

作者头像 李华
网站建设 2026/8/5 3:46:04

37、Solaris 文件与文件 I/O 深入解析

Solaris 文件与文件 I/O 深入解析 1. 高效的文件 I/O 操作 传统的文件读写操作通常使用 lseek() 和 read() 系统调用组合来实现从特定偏移位置开始读写,但这种方式需要两个系统调用。而在 Solaris 系统中, pread(2) 和 pwrite(2) 系统调用则允许仅通过一个系统调用…

作者头像 李华
网站建设 2026/8/6 23:30:15

45、内核可调参数、开关和限制及虚拟地址映射详解

内核可调参数、开关和限制及虚拟地址映射详解 1. 内核可调参数概述 内核可调参数是可以设置的内核变量,传统上被称为内核可调参数。这些参数的值在 /etc/system 文件中设置,系统在启动时会读取该文件,因此对该文件所做的任何更改都需要重启系统才能生效。 可设置的内核…

作者头像 李华
网站建设 2026/8/6 20:36:07

AI市场舆情分析与量化风险:超越预测的2025年AI决策之道

在信息爆炸与市场瞬息万变的2025年,企业决策应该更依赖高管团队的直觉经验,还是能够拥抱一种全新的智能范式?这已不再是一个遥远的选择题,而是摆在每一位决策者面前的现实挑战。当市场的反馈周期从季度、月度被压缩至以天甚至小时…

作者头像 李华
网站建设 2026/8/6 23:44:11

Ivy统一AI框架:5步实现多框架代码无缝转换

在AI开发领域,你是否曾因不同框架间的代码迁移而头疼?Ivy统一AI框架正是为解决这一痛点而生。这个创新的开源项目让机器学习代码可以在PyTorch、TensorFlow、JAX、NumPy等主流框架间自由转换,真正实现了"一次编写,到处运行&q…

作者头像 李华