在日常工作中,我們發(fā)現(xiàn)很多用戶沒有定期備份數(shù)據(jù)的習(xí)慣,當(dāng)被黑客入侵刪除數(shù)據(jù)或是中了勒索病毒后,才后悔莫及。定期備份數(shù)據(jù)對網(wǎng)站來說,是必不可少的管理工作。
如果只是本地定期備份數(shù)據(jù),是不需要花錢的,有多種方法實現(xiàn)。
1、 手工定期備份
2、 編寫腳本定期備份
3、 使用免費備份軟件
手工定期備份,這個沒啥說的,就是定期人工將數(shù)據(jù)打包備份,缺點就是容易忘記,也很瑣碎,一般不推薦。
編寫定期備份腳本也非常簡單,思路:復(fù)制文件到備份目錄下的日期子目錄。
然后使用計劃任務(wù)定期執(zhí)行這個腳本就可以了。
Windows代碼如下:
@echo off
setlocal
:: 獲取當(dāng)前日期,格式為YYYY-MM-DD(注意:這里使用了短橫線作為分隔符)
for /f "tokens=2 delims==" %%i in ('wmic os get localdatetime /value') do set datetime=%%i
set datetime=%datetime:~0,4%-%datetime:~4,2%-%datetime:~6,2%
:: 定義源目錄和目標(biāo)目錄
set "source=D:\wwwroot" ::需要備份的源目錄
set "destination=D:\Backup\%datetime%" ::備份文件存放目錄,請勿包含中文
:: 創(chuàng)建目標(biāo)目錄(如果不存在)
if not exist "%destination%" mkdir "%destination%"
:: 復(fù)制文件,包括子目錄和隱藏文件
xcopy /E /I /H /C /Y "%source%" "%destination%"
:: 提示完成
echo Backup completed at %datetime%
:eof
endlocal
Linux代碼如下:
#!/bin/bash
# 獲取當(dāng)前日期,格式為YYYY-MM-DD
datetime=$(date +"%Y-%m-%d")
# 定義源目錄和目標(biāo)目錄
source="/www/wwwroot" # 需要備份的源目錄
destination="/backup/${datetime}" # 備份文件存放目錄,請勿包含中文
# 創(chuàng)建目標(biāo)目錄(如果不存在)
mkdir -p "${destination}"
# 復(fù)制文件,包括子目錄和隱藏文件
# 在Linux中,隱藏文件以"."開頭,rsync可以很好地處理這些文件
rsync -av --include='*/' --include='.*' --exclude='*' "${source}/" "${destination}/"
# 注意:上面的rsync命令可能不會按預(yù)期復(fù)制隱藏文件,因為它首先排除了所有文件。
# 一個更簡單的方法是使用cp命令的-r(遞歸)和-a(歸檔模式,保留屬性)選項,但cp不直接支持隱藏文件的特殊處理。
# 如果確實需要復(fù)制所有隱藏文件,可以考慮使用find命令結(jié)合cp。
# 下面是一個使用find命令的示例:
find "${source}" -mindepth 1 -maxdepth 1 -exec cp -rp {} "${destination}/" \;
# 但是,上面的find命令只會復(fù)制源目錄的直接內(nèi)容,不會遞歸復(fù)制子目錄。
# 為了遞歸復(fù)制所有內(nèi)容(包括隱藏文件和目錄),可以使用下面的rsync命令,它經(jīng)過修正可以正確處理隱藏文件:
rsync -a --exclude='*/..?' "${source}/" "${destination}/"
# --exclude='*/..?' 排除了源目錄本身(如果它是一個單獨的目錄而不是文件集合的話),但允許遞歸復(fù)制其內(nèi)容,同時包括隱藏文件。
# 提示完成
echo "Backup completed at ${datetime}"
至于第三種,使用軟件自動備份,這個更簡單,主要需要一款免費備份的軟件,可以使用《護衛(wèi)神.好備份(免費版)》,安裝后添加備份規(guī)則(下圖一)就可以了。
該軟件有如下優(yōu)點:支持壓縮備份、支持一鍵還原、支持排除文件、支持差異備份、支持壓縮分卷、支持文件加密,當(dāng)然最大的優(yōu)點是:免費的。
(圖一:添加備份任務(wù))
可以設(shè)置高級篩選規(guī)則,如下圖二
(圖二:文件篩選)
查看備份日志:
(圖三:備份日志)
還支持一鍵還原備份數(shù)據(jù),如下圖四
(圖四:一鍵還原備份)