Linux 下實現自動備份,主要就是編寫好執行備份的 shell script( *.sh )文件,設好權限(可讀,可執行)。而後利用 Linux 定時任務 crontab 來執行備份腳本就能夠了。之後備份其餘文件也是這樣的執行過程html
# 數據庫帳號 db_user="****" # 數據庫密碼 db_passwd="**************" # 數據庫名稱 db_name="db_test" # 指定備份數據庫存放目錄,此目錄根據本身的須要能夠修改,可是必定要指定絕對路徑 backup_dir="/usr/software/mysqlbackup" # 數據庫名稱後更得時間格式 (年月日時分秒) time="$(date +"%Y%m%d%H%M%S")" # 備份關鍵語句,其中 mysqldump 命令。注意變量前面加 $ 。 mysqldump -u$db_user -p$db_passwd $db_name > "$backup_dir/$db_name"_"$time.sql"
若是須要壓縮,把最後一句話替換成 mysql
# 備份並壓縮關鍵語句,其中 mysqldump 和 gzip 命令。注意變量前面加 $ 。 mysqldump -u$db_user -p$db_passwd $db_name | gzip > "$backup_dir/$db_name"_"$time.sql.gz"
這就是備份的 shell script。sql
若是想要驗證一下效果 那麼就輸入 這個文件的絕對路徑,而後回車就能夠了。shell
例如上面這個腳本存放在 usr —> sbin 目錄下,它的名字是mysqlback.sh。那麼手動執行驗證的方法就是輸入 /usr/sbin/mysqlback.sh ,而後回車數據庫
* 注意:backup_dir 此目錄必定是存在的,而且擁有可寫權限。vim
在Linux 中,腳本執行必須有可執行權限,可讀權限,修改權限 chmod +x /usr/sbin/mysqlback.sh。spa
Linux 中權限的知識能夠見我博客:認識 Linux 文件權限code
定時任務是 crontab 。建立而且編輯 crontab 任務htm
crontab -e blog
此配置腳本的一行就是一個任務。定時任務能夠根據 分鐘、小時、日、月、星期 的時間類型(星期和月日同時設定)來定,他們內容範圍是
特殊字符、特殊時間的標識
若是想要刪除其中的一個任務就是經過刪除任務所在的那行就能夠了。
查看定時任務 crontab -l(這個參數是小寫的愛歐,不是大寫哎)
刪除所有定時任務 crontab -r (此命令慎用)。
若是想要編輯 test 這個文本,那麼 vi test 。或者 vim test 。若是當前目錄不在這個文件所在當前目錄下,用 絕對路徑就能夠。
進去之後,仍是不能編輯內容,須要點擊 i 纔可以編輯內容
完成編輯後:點擊 Esc 鍵,退出編輯模式
點擊 :wq 爲保存退出編輯。:q 不保存退出。