說明
1.該文章說明了如何使用oss儲存備份檔案並定期刪除
2.使用oss是因為**低廉,並且伺服器的儲存空間有限,備份檔案按日期不斷疊加,容易撐爆伺服器儲存空間,所以直接上傳到oss上儲存
3.在上傳到oss的基礎上,通過oss生命週期管理的方式來刪除準備儲存週期外的備份檔案
用到的工具
oss命令列工具 ossutil
操作步驟
1.在伺服器上準備sqlserver或mysql備份檔案若干或其他備份檔案
2.準備阿里雲oss儲存,並新增訪問access key
此處參考oss文件:
3.完成步驟2後建立乙個用於儲存資料庫儲存的bucket
注意讀寫許可權由於不是公共訪問的,將讀寫許可權設定為 私有
參考:
./ossutil64 config
請輸入配置檔名,檔名可以帶路徑(預設為:/home/user/.ossutilconfig,回車將使用預設路徑。如果使用者設定為其它路徑,在使用命令時需要將--config-file選項設定為該路徑): 未輸入配置檔案路徑,將使用預設配置檔案:/home/user/.ossutilconfig。 對於下述配置,回車將跳過相關配置項的設定,配置項的具體含義,請使用"help config"命令檢視。
請輸入語言(ch/en,預設為:ch,該配置項將在此次config命令成功結束後生效):ch
請輸入endpoint:
請輸入accesskeyid:youraccesskeyid
請輸入accesskeysecret:youraccesskeysecret
請輸入ststoken:
4.在伺服器上編寫指令碼上傳檔案
以windows伺服器為例,linux伺服器同理
@echo off
d:\program\ossutil64\ossutil64.exe cp -r -f -u d:\database oss://db-zhangjiakou/database
@if not %errorlevel% == 0 exit /b %errorlevel%
del d:\database\*.* /s /q
說明:
第一行為關閉輸出
第二行為上傳命令,引數 -u 會自動忽略已上傳的檔案
第三行和第四行為判斷如果沒有錯誤說明上傳成功,刪除本地的備份檔案
5.通過設定windows任務計畫程式,或者linux 定時任務crontab
設定為每天或者定時週期執行指令碼即可
6.通過基礎設定-生命週期設定來設定檔案的生命週期,達到自動刪除檔案的目的
紅框中的為需要配置的選項。
刪除檔案配置有兩種方式:一種是按照檔案名字進行匹配,另外一種是對整個bucket進行配置(針對所有檔案)
檔名匹配說明:
比如有/db/test.bak
/db/test1.bak
/db/test2.bak
檔案名字匹配是對整個名字,包含了路徑名的。
比如 匹配 /db/ 上面三個都能夠被匹配到。
如果是/db/test2.bak 則最後乙個才能被匹配到。
清除策略一般按照 過期天數進行設定,就是按照上傳檔案日期到設定的天數區間,超過這個時間的就會自動刪除。(注意:刪除不是即時的,24小時內生效)
LINUX 定時備份檔案
檔案備份操作指南備份1.檢視vixie cron rpm 軟體包是否已安裝 判定該軟體包是否已安裝,使用 rpm q vixie cron 命令。2.判定服務是否在執行 判定該服務是否在執行,使用 sbin service crond status 命令 3.啟動 關閉和重啟 重新載入配置 執行以下...
linux svn定時備份檔案 檔案上傳
需求比較簡單,因為svn庫比較小,才10多個g,每天定時備份乙個全量的svn檔案,上傳到另外乙個伺服器上就可以了,按照周一到周五自動備份,然後ftp上傳覆蓋更新 1 先建立乙個svn.pl備份指令碼,內容如下 usr bin perl w my svn repos var svn svnrepos ...
用winrar定時壓縮備份檔案
近日由於需要定時對系統中某個指定資料夾進行定時按日期全備份。原來想著自己做個軟體執行,後來查到一種通過計畫任務執行bat檔案,利用winrar進行引數呼叫壓縮的方法。1.安裝winrar 2.新建文字文件,輸入程式 c progra 1 winrar winrar.exe a ag k r s ib...