阿里雲OSS定時備份檔案並定時刪除過時檔案

2021-10-18 22:15:28 字數 1911 閱讀 6849

說明

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...