title icon 學務系統交流網
menu_top_background
:::
sfs3 資料庫自動備份
:::

透過簡單的 shell script 用 ftp 把備份資料傳到其他台去.
舉例來說叫做 autobackup
底下是 autobackup 的內容

#!/bin/sh
# 切換到欲備份的資料夾
cd /var/lib/mysql

# 將檔案進行壓縮 並將檔案以日期編號後 放到自己的家目錄
# 此例我的帳號為 shuing 檔名為 hg-sfs-日期四碼.tar.gz
# 也就是說 把mysql資料壓縮後放到 /home/shuing/
# 以今天3/5為例 則檔名為 hg-sfs-0305.tar.gz
tar zcvf /home/shuing/hg-sfs-`date '+%m%d'`.tar.gz ./*

# 把工作路徑切換回自己家目錄
cd /home/shuing/

# 設定變數 file 表示先前壓縮後的檔案名稱
file=hg-sfs-`date '+%m%d'`.tar.gz

# 別台ftp 主機的位置
host="主機位址"

# 使用者帳號 及密碼
user="帳號"
pass="密碼"

# 設定ftp傳輸後的存放位置 (此為直接放在那個人的ftp家目錄中)
dir="./"

# 以下不用動
ftp -in << EOF
open $host
user $user $pass
cd $dir
bin
put $file
quit
EOF

# ftp檔案已經傳輸過去 您可以自行決定是否要把備份後的檔案刪除
# 若覺得不用刪除 就把 底下那行拿掉.
rm -rf $file

====我是分隔線 ====
變更為可執行
chmod 700 autobackup

在 crontab 中加入
0 2 * * 7 /home/shuing/autobackup
因為我autobackup檔案放在 /home/shuing/之下所以路徑為
/home/shuing/autobackup 設定每週日2點備份.

autobackup 範例檔 : ftp://ohaha.ks.edu.tw/pub/tools/autobackup

感謝 panda 熱情提供

menu_bottom_background

::: copy right: 苗栗縣政府教育處資訊中心
建議使用瀏覽器Firefox或Chrome