MySQL - MySQL 8.0(七)备份:使用XtraBackup进行备份

版权声明:本文为博主原创文章,遵循 CC 4.0 BY 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/nangy2514/article/details/99560889

此学习文是基于MySQL 8.0写的
得益于大神朋友的悉心指导解决不少坑,才写出此文,向大神奉上膝盖

  XtraBackup是由Percona提供的开源备份软件。它能在不关闭服务器的情况下复制普通文件。但为了避免不一致,它会使用REDO日志文件。XtraBackup被许多公司广泛用作标准备份工具。与逻辑备份工具相比,其优势是备份速度非常快,恢复速度也非常快。
  以下是Percona XtraBackup的工作原理(摘自Percona XtraBackup文档)。

  1. XtraBackup复制InnoDB数据文件,这会导致内部不一致的数据,但是它会对文件执行崩溃恢复,以使其再次成为一个一致的可用数据库。
  2. 这样做是可行的,因为InnoDB维护一个REDO日志,也称为事务日志。REDO日志包含了InnoDB数据每次更改的记录。当InnoDB启动时,REDO日志会检查数据文件和事务日志,并执行两个步骤。它将已提交的事务日志条目应用于数据文件,并对任何修改了数据但未提交的事务执行undo操作。
  3. Percona XtraBackup会在启动时记住日志序列号(LSN),然后复制数据文件。这需要一些时间来完成,如果文件正在改变,那么它们会在不同的时间点反映数据库的状态。同时,Percona XtraBackup运行一个后台进程,用于监视事务日志文件,并从中复制更改。Percona XtraBackup需要持续这样做,因为事务日志是以循环方式写人的,并且可以在一段时间后重新使用。 PerconaXtraBackup开始执行后,需要复制每次数据文件更改对应的事务日志记录。

安装

官网下载:安装包
官网下载:percona-release

1. Apt

方式一、 软件包安装(deb)

# nangy @ nangy-vm in ~/Downloads [11:20:23] 
$ wget https://www.percona.com/downloads/Percona-XtraBackup-LATEST/Percona-XtraBackup-8.0-7/binary/debian/stretch/x86_64/percona-xtrabackup-80_8.0.7-1.stretch_amd64.deb

# nangy @ nangy-vm in ~/Downloads [11:21:23] 
$ sudo gdebi percona-xtrabackup-80_8.0.7-1.stretch_amd64.deb

方式二、 软件仓库安装(percona-release)

  1. 下载 Percona 库软件包
# nangy @ nangy-vm in ~/Downloads [13:46:20] 
$ wget https://www.percona.com/redir/downloads/percona-release/debian/latest/percona-release_0.1-6.stretch_all.deb
  1. 安装 Percona 库软件包
# nangy @ nangy-vm in ~/Downloads [13:46:40] 
$ sudo gdebi percona-release_0.1-6.stretch_all.deb
  1. 查看 Percona 库软件源配置
# nangy @ nangy-vm in ~/Downloads [13:48:54] 
$ cat /etc/apt/sources.list.d/percona-release.list 
#
# Percona releases, stable
#
deb http://repo.percona.com/apt stretch main
deb-src http://repo.percona.com/apt stretch main
#
# Testing & pre-release packages
#
#deb http://repo.percona.com/apt stretch testing
#deb-src http://repo.percona.com/apt stretch testing
#
# Experimental packages, use with caution!
#
#deb http://repo.percona.com/apt stretch experimental
#deb-src http://repo.percona.com/apt stretch experimental
  1. 更新本地缓存
# nangy @ nangy-vm in ~/Downloads [13:49:34] 
$ sudo apt update 
  1. 安装XtraBackup
# nangy @ nangy-vm in ~/Downloads [13:55:41] 
$ sudo apt install percona-xtrabackup-80

2. Yum

方式一、 软件包安装(rpm)

# nangy @ nangy-vm in ~/Downloads [11:22:23] 
$ sudo yum install -y "https://www.percona.com/downloads/Percona-XtraBackup-LATEST/Percona-XtraBackup-8.0-7/binary/redhat/7/x86_64/percona-xtrabackup-80-8.0.7-1.el7.x86_64.rpm"

方式二、 软件仓库安装(percona-release)

  1. 安装mysql-community-libs-compat
# nangy @ nangy-vm in ~/Downloads [11:22:23] 
$ sudo yum install -y mysql-community-libs-compat
  1. 安装Percona库:
# nangy @ nangy-vm in ~/Downloads [11:22:23] 
$ sudo yum install -y "https://repo.percona.com/yum/percona-release-latest.noarch.rpm"
  1. 查看库信息
# nangy @ nangy-vm in ~/Downloads [11:22:23] 
$ yum list | grep xtrabackup
  1. 安装XtraBackup
# nangy @ nangy-vm in ~/Downloads [11:22:23] 
$ sudo yum install percona-xtrabackup-80

备份

猜你喜欢

转载自blog.csdn.net/nangy2514/article/details/99560889