天天看點

資料庫備份XtraBackup和innobackupex安裝

連結:https://pan.baidu.com/s/1HI8Tc8YnQn34lcuV3Tvtew 密碼:45a1

連結:https://pan.baidu.com/s/1Lq4UHa7EbsBVlBAFbbMgpA 密碼:b2zs

-----------------------------------------------------------------------------------------------------------

因為軟體bug的原因:需要先安裝

libev-4.04-2.el6.x86_64

rpm -ivh libev-4.04-2.el6.x86_64

安裝XtraBackup-2.4.9

解壓,然後安裝

rpm -ivh p(tab)*

如之前有舊版本的xtrabackup,先解除安裝在安裝

----------------------------------------------------------------------------------------------------------

MySQL全量備份腳本

#!/bin/bash

#-------------------------------------------------------------------------#

#每小時全備MySQL一次

#-------------------------------------------------------------------------#

IP=xxxx

#-------------------------------------------------------------------------#

#備份用的使用者名

USER=xxxx

#-------------------------------------------------------------------------#

#備份使用者的密碼

PASSWORD=xxxx

#-------------------------------------------------------------------------#

#MySQL啟動的檔案

FILE=/var/lib/mysql/mysql.sock

#-------------------------------------------------------------------------#

#備份MySQL的放置位置

DIR=/MySQL_backup/

#-------------------------------------------------------------------------#

#MySQL的配置檔案

file=/etc/my.cnf

#-------------------------------------------------------------------------#

#時間

TIME=`date +%F_%Hh_%Mm`

#MySQL端口

PORT=xxxx

#-------------------------------------------------------------------------#

innobackupex --defaults-file="$file" --host="localhost" --port="$PORT" --user="$USER" --password="$PASSWORD" --socket="$FILE" --stream=tar "$DIR" | gzip -> "/MySQL_backup/MySQL_backup_$TIME.tar.gz"

#-------------------------------------------------------------------------#

if [ $? -eq 0 ];then

        rsync -av --delete /MySQL_backup/MySQL_backup_$TIME.tar.gz root@$IP:/MySQL_backup/

else

        echo "${TIME}:MySQL備份失敗" >> /root/MySQL_backup.log && echo 'Mysql_backup失敗' | mail -s "MySQL_backup" [email protected]

fi

#-------------------------------------------------------------------------#

if [ $? -eq 0 ];then

        find /MySQL_backup/* -mtime +6 -exec rm -rf {} \;

        ssh root@$IP "find /MySQL_backup/* -mtime +6 -exec rm -rf {} \;"

fi

#-------------------------------------------------------------------------#

繼續閱讀