超詳細的Linux資料庫定時備份及上傳至阿里雲oss
阿新 • • 發佈:2021-01-19
Linux資料庫定時備份及上傳至阿里雲oss
備份資料庫指令碼 命名為(xxx.sh)
#當前時間 dd=`date +%Y-%m-%d-%H-%M-%S` echo "執行sql檔案備份!備份時間: $dd" #執行備份命令 -u 資料庫名 -p 資料庫密碼 -h 主機地址 -P mysql埠 -E後是 要備份的資料庫名 > 要備份到的地址 #.gz 是將備份好的檔案壓縮 mysqldump -u使用者名稱 -p密碼 -h主機號 -P資料庫埠號 --single-transaction --default-character-set=utf8 -R -E 要備份的資料庫名| gzip>儲存路徑/資料庫名-$dd.sql.gz #列印備份成功日誌 echo "xxx資料庫sql檔案備份成功! xxx-$dd.sql 壓縮成功!" echo "壓縮後文件儲存路徑為---->> 儲存路徑/資料庫名-$dd.sql.gz" echo "執行檔案上傳至阿里雲oss!上傳時間為:$dd" #執行檔案上傳至阿里雲oss操作 /ossutil64 cp 是ossutil64檔案上傳命令 你要上傳的檔案 oss://你的桶名backetName /ossutil64 cp 儲存路徑/資料庫名-$dd.sql.gz oss://桶名/$dd/ echo "資料庫備份檔案上傳至阿里雲oss成功!" echo "================================================================"
ossutil64 下載
官方文件路徑:https://help.aliyun.com/document_detail/120075.html
- 首先需要下載wget命令:
apt install wget
- 下載
wget http://gosspublic.alicdn.com/ossutil/1.7.0/ossutil64
- 修改檔案許可權
chmod 755 ossutil64
- 使用互動式配置生成配置檔案
./ossutil64 config
- 接著進行配置
endpoint:你的阿里雲物件儲存 endpoint accessKeyID:你的阿里雲物件儲存 accessKeyID accessKeySecret:你的阿里雲物件儲存 accessKeySecret stsToken:------stsToken可以不填,直接enter跳過------
配置完成即可命令測試
/ossutil64 cp 上傳的檔案路徑 oss://桶名
成功日誌如下:
Succeed: Total num: 1, size: 6,952,682. OK num: 1(upload 1 files).
average speed 2205000(byte/s)
3.154561(s) elapsed
Linux設定定時任務
首先需要下載 “crontab”
apt install crontab
啟動
service cron start //啟動服務
檢視執行狀態
service cron status //檢視執行狀態 返回---->>> [ ok ] cron is running. ----<<表示正在執行
建立定時任務
crontab –e : 修改 crontab 檔案. 如果檔案不存在會自動建立。
i 進入編輯 :wq 儲存退出
分 時 日 月 年
* * * * * /需要執行的檔案 >>/日誌檔案儲存路徑
#每天2點執行一次
0 2 * * * 指令碼路徑/xxx.sh >>日誌儲存路徑/xxx.txt
檢視日誌
# 日誌檔案路徑
tail -300f 日誌儲存路徑/xxx.txt
cron命令如下:
service cron start //啟動服務
service cron stop //關閉服務
service cron restart //重啟服務
service cron status //檢視執行狀態
crontab –e : 修改 crontab 檔案. 如果檔案不存在會自動建立。
crontab –l : 顯示 crontab 檔案。
crontab -r : 刪除 crontab 檔案。
crontab -ir : 刪除 crontab 檔案前提醒使用者。
資料庫gz檔案恢復
#解壓檔案並執行資料恢復 使用者名稱 密碼 資料庫名
gunzip < 需要恢復的檔案路徑/xxx.sql.gz | mysql -u使用者名稱 -p密碼 資料庫名