码迷,mamicode.com
首页 > 其他好文 > 详细

xtrabackup备份工具

时间:2018-09-11 00:56:14      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:test   恢复   nobackup   point   wget   恢复备份   apply   不同   using   

安装方法一

1.Install the Percona repository

[root@service2 ~]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm -y

2.Testing the repository

[root@service2 ~]# yum list | grep percona

3.Install the packages

[root@service2 ~]# yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm -y

[root@service2 ~]# yum install percona-xtrabackup-24 -y

安装方法二

1.Installing Percona XtraBackup using downloaded rpm packages
[root@service2 ~]# wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.4/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.4-1.el7.x86_64.rpm

[root@service2 ~]# yum localinstall percona-xtrabackup-24-2.4.4-1.el7.x86_64.rpm -y

数据库进行备份

[root@server ~]# innobackupex --defaults-file=/etc/my.cnf -uroot -p102110504 ~/backup/

查看
[root@server 2018-09-10_08-07-37]# cat xtrabackup_checkpoints
backup_type = full-backuped
from_lsn = 0
to_lsn = 1597945
last_lsn = 1597945
compact = 0
recover_binlog_info = 0

备份准备

使用该选项进行备份后,您首先需要准备它以便恢复它。数据文件在准备之前不是时间点一致的,因为它们在程序运行时的不同时间被复制,并且在发生这种情况时它们可能已被更改。如果您尝试使用这些数据文件启动InnoDB,它将检测损坏并自行崩溃,以防止您在损坏的数据上运行。该步骤使文件在一个时刻完全一致,因此您可以在它们上运行InnoDB。

[root@server 2018-09-10_08-07-37]# innobackupex --prepare --apply-log-only ./

恢复备份

警告
备份需要准备好才能恢复。为方便起见,xtrabackup binary有一个 选项,它将备份复制到服务器的datadir:xtrabackup --copy-back
$ xtrabackup --copy-back --target-dir = / data / backups /
如果您不想保存备份,可以使用 将备份数据移动到datadir的选项。xtrabackup --move-back
如果您不想使用上述任何选项,则可以另外使用 rsync或cp来还原文件。

注意
在恢复备份之前,datadir必须为空。另外需要注意的是,在执行恢复之前需要关闭MySQL服务器。您无法还原到正在运行的mysqld实例的datadir(导入部分备份时除外)。可用于还原备份的rsync命令示例如下所示:

$ rsync -avrP / data / backup / / var / lib / mysql /
您应该检查已还原的文件是否具有正确的所有权和权限。

由于文件的属性将被保留,在大多数情况下,您需要mysql在启动数据库服务器之前将文件的所有权更改为,因为它们将由创建备份的用户拥有:

$ chown -R mysqlmysql /var/lib/mysql
现在可以恢复数据,您可以启动服务器。

[root@server mysql]# systemctl stop mariadb
[root@server mysql]# rm -fr /var/lib/mysql/*
[root@server 2018-09-10_08-07-37]# innobackupex --datadir=/var/lib/mysql --copy-back ./
[root@server mysql]# chown -R mysqlmysql /var/lib/mysql
[root@server mysql]# systemctl start mariadb

xtrabackup备份工具

标签:test   恢复   nobackup   point   wget   恢复备份   apply   不同   using   

原文地址:http://blog.51cto.com/13893093/2173515

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!