xtrabackup备份mysql数据库方法

1.安装 xtrabackup 工具包mysql

下载percona yum源sql

https://www.percona.com/redir/downloads/percona-release/redhat/percona-release-0.1-4.noarch.rpm数据库

rpm -ivh percona-release-0.1-4.noarch.rpm

经过 yum 方式安装 percona-xtrabackupbash

yum install percona-xtrabackup -y

*若提示GPG密钥不适用,能够编辑/etc/yum.repos.d/percona-release.repo文件,关闭GPG校验app

 

2.经过 innobackupex 备份数据库工具

链接到服务:innobackupex 或者xtrabackup 经过--user和--password 链接到数据库服务, --defaults-file 指定 mysql 配置文件目录,/mnt 是将备份存放的目录spa

*能够把数据库用户名和密码添加到my.cnf数据库配置文件中线程

innobackupex --defaults-file=/etc/my.cnf --user=root /mnt

 ——————————————————————————————code

压缩备份(可用参数:--parallel=4:加速备份,这个选项会指定 xtrabackup 备份文件的线程数)blog

innobackupex --defaults-file=/etc/my.cnf --user=root --stream=tar /mnt | gzip - > /mnt/mysqlbak1.tar.gz

提取压缩

tar -zxivf /mnt/mysqlbak1.tar.gz

 ——————————————————————————————

自动备份脚本

#!/bin/bash log=mysql_`date +%y%m%d%H%M`.log str=mysql_`date +%y%m%d%H%M`.tar.gz innobackupex --defaults-file=/etc/my.cnf --user=root --password=123456 --database=mysql --stream=tar /mnt/autoback_data/ 2>/mnt/autoback_data/$log | gzip
- > /mnt/autoback_data/$str

 

3.恢复数据库

prepare 数据库

建立完备份以后的数据还不能立刻用来还原,须要回滚未提交事务,前滚提交事务, 让数据库文件保持一致性

innobackupex --defaults-file=/etc/my.cnf --apply-log /mnt/2019-02-20_10-09-54/
innobackupex --defaults-file=/etc/my.cnf --copy-back /mnt/2019-02-20_10-09-54/

修改恢复的数据目录权限

chown -R mysql:mysql /var/lib/mysql

*数据文件目录能够在my.cnf配置文件中自定义

相关文章
相关标签/搜索