使用shell 指令碼備份資料

星月情緣02發表於2020-09-29

做運維的人一般都會用到shell 指令碼, 而且是必須會的。  shell 是Linux 系統自帶的工具, 可用大大的提高效率。 減少人肉運維。

下面就簡單介紹一篇 備份資料的例子。 

#!/bin/bash
#auto_backup.sh
db_user="dbuser"
db_password="123456"
db_host="192.168.100.109"

ftp_user="ftpuser"
ftp_password="111111"
ftp_host="192.168.100.103"

dst_dir="/home/ftpuser/backup"
time_date="`date +%Y%m%d%H%M%S`"
file_name="school_score_${time_date}.sql"

function auto_ftp
{
  ftp -niv << EOF
    open $ftp_host 
    user $ftp_user $ftp_password

    cd $dst_dir
    put $1
    bye
EOF
}

mysqldump -u"$db_user" -p"$db_password" -h"$db_host" school score > ./$file_name && auto_ftp ./$file_name

上述內容就是備份資料庫裡指定的表或全部都備份,  看自己的實際需求決定。

可用寫好指令碼後測試一下效果。 沒問題了, 可用加入到系統的定時任務中, 讓系統執行自動定時備份。  這樣就不會忘記手工去備份資料了。 

 

 

相關文章