#!/bin/bash
#數據庫的完全備份
#把日期顯示爲170605(這個是當前的時間)的格式
date=$(date +%y%m%d)
#計算下這個備份的數據庫文件的大小
size=$(du -sh /var/lib/mysql)
#接下來判斷文件是否存在,這裏的/tmp/dback和/tmp/dback/db.txt都是臨時文件,可以隨意設置
if [-d /tmp/dback]
then
echo "Date is $date !!!" >/tmp/dback/db.txt
echo "Size is $size !!!" >>/tmp/dback/db.txt
cd /tmp/dback
#我們這裏的/var/lib/mysql爲rpm包安裝的默認數據庫存放路徑,如果是源碼包安裝的那麼數據庫的默認路徑在/usr/local/mysql,所以源碼包備份數據庫只要把下/var/lib/mysql換成/usr/local/mysql就可以了
tar -zvf mysql-$date.tar.gz /var/lib/mysql &>/dev/null
#最後刪除臨時文件
rm -rf /tmp/dback/db.txt
else
#下面與上面的是一樣的代碼原理也一樣,我就不註釋了
mkdir /tmp/dback
echo "Date is $date !!!" >/tmp/dback/db.txt
echo "Size is $size !!!" >>/tmp/dback/db.txt
cd /tmp/dback
tar -zvf mysql-$date.tar.gz /var/lib/mysql &>dev/null
rm -rf /tmp/dback/db.txt
fi