xtrabackup備份mysql數據庫方法


1.安裝 xtrabackup 工具包

下載percona yum源

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-xtrabackup

yum install percona-xtrabackup -y

*若提示GPG密鑰不適用,可以編輯/etc/yum.repos.d/percona-release.repo文件,關閉GPG校驗

 

2.通過 innobackupex 備份數據庫

連接到服務:innobackupex 或者xtrabackup 通過--user和--password 連接到數據庫服務, --defaults-file 指定 mysql 配置文件目錄,/mnt 是將備份存放的目錄

*可以把數據庫用戶名和密碼添加到my.cnf數據庫配置文件中

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

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

壓縮備份(可用參數:--parallel=4:加速備份,這個選項會指定 xtrabackup 備份文件的線程數)

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配置文件中自定義


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM