歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

linux自動備份網站和數據庫

linux自動備份網站和數據庫

 兩台服務器111,和117服務器,每天完成111服務器上網站和數據庫自動備份到117服務器上
1:我的111服務器上是當前用戶:sx
A:  查看當前用戶的計劃任務:crontab -l是查看當前用戶的任務 用 vi  crontab -e 是為sxw用戶創建一個計劃任務
 第一行:每天3點運行/home/sxw/rsync201.sh shell腳本,
 第二行:和第三行是每天下午7點運行tar包,gaokaotong和phpcms文件
 第三行:每天7點22分運行/homesxw/back_up.sh shell腳本,
注意:這裡是當前用戶sxw,所以要shell腳本路徑要有用戶sxw權限,在這裡/home/sxw/back_up shell腳本,是當前用戶sxw用戶的家目錄。
B:   111服務器上/home/sxw/back_up.sh腳本
code:
-bash-3.2$ vim /home/sxw/back_up.sh
#!/bin/sh
echo "開始備份數據庫"
mysqldump -u jeecms -pjeecms1234 gktcms > gktcms.sql
mysqldump -u jeecms -pjeecms1234 phpcms > phpcms.sql
echo "備份數據庫完成,復制到117服務器端"
scp -P 10022 gktcms.sql [email protected]:/home/zk
scp -P 10022 phpcms.sql [email protected]:/home/zk
scp -r -P 10022 /opt/www/www2/phpcms.tar.gz [email protected]:/home/zk/
scp -r -P 10022 /opt/www/www2/gaokaotong.tar.gz [email protected]:/home/zk/
echo "發送完成"


C:  還要在111上做ssh信任,這個可參照ssh資料。很簡單,只需要建立兩個密鑰。
2: 117服務器上/homezk/自動就會多出兩個tar包文件,phpcms.tar.gz 和gaokaotong.tar.gz
 
 這裡每天自動保存兩個文件,phpcms.tar.gz 和 gaokaotong.tar.gz文件
  這裡做了一個shell腳本,保存前兩天的文件,跟上述111服務器上的建立計劃任務一樣:
 A:  查看117的計劃任務: crontabl -l


B: 在查看/home/zk/back.sh 的shell編寫
code:
[zk@DB2 ~]$ vi /home/zk/back.sh 


#!/bin/sh
TARFILE="/home/zk/phpcms.tar.gz"
if [ -f $TARFILE ];then
  mv /home/zk/phpcms.tar.gz /home/zk/phpcms_$(date +%Y%m%d).tar.gz
  #remove date file
  DATE_B=$(date -d"2 day ago" +%Y%m%d)
  FILENAME="/home/zk/phpcms_"$DATE_B".tar.gz"
  if [ -f $FILENAME ];then
  rm -rf /home/zk/phpcms_$DATE_B.tar.gz
  else
  echo "沒有可刪除文件"
  fi
else
  echo "沒有源文件"
fi
~   
 
結束。
Copyright © Linux教程網 All Rights Reserved