為了保障伺服器中資料的可恢複性,採用異地備份資料庫方案。異地備份資料分為異地備份檔案資料與異地備份資料庫資料二種。其中異地備份檔案資料是為了備份網站中使用者上傳的檔案而設計的。而異地備份資料庫資料是將資料庫中資料備份檔案上傳到異地伺服器。
如果省事可以使用一些軟體例如 綠環FTP資料備份、rsync都可以。
一、實施過程及原理為:
1. 需安裝WinRAR軟體,用於將多個待備份檔案壓縮成一個壓縮檔。
2. 書寫備份腳步:
目錄定位到WinRAR軟體安裝路徑下
cd c:\program files\winrar
執行rar.exe程式
rar a -r -y c:\c.rar c:\c\a c:\c\b
串連遠程ftp伺服器,其中要書寫ftp://ftp.txt/檔案
ftp -s:c:\ftp.txt 192.168.0.1
可刪除本地備份檔案
del /f /q c:\c.rar
目錄重新置放
cd\
完整代碼如下(back.bat):
複製代碼 代碼如下:
cd c:\program files\winrar
rar a -r -y c:\c.rar c:\c\a c:\c\b
ftp -s:c:\ftp.txt 192.168.0.1
del /f /q c:\c.rar
cd\
3. 書寫遠程ftp串連設定檔
使用者名稱
密碼
cd 路徑
Put 本地檔案路徑及檔案名稱 遠程檔案路徑及檔案名稱
Bye為退出
完整代碼如下(ftp.txt):
admin
Heroic
put c:\c.rar c.rar
bye
4. 通過windows內建的“任務計劃”功能定時運行bat檔案。(通過“開始”->“附近”->“系統工具”->“任務計劃”
5. 備份oracle資料庫命令為:
exp userid/pwd@servicename file = "backupfilepath" owner = user
注意userid為系統管理員,backupfilepath為檔案儲存路徑(檔案尾碼為dmp) ,user是針對那個使用者進行備份,如果不寫該參數,則預設針對userid使用者進行備份
例如:
exp user/pwd@servername file=d:"backup"oracle"oracle%date:~0,10%.dmp owner=system log=d:"backup"oracle"oracle%date:~0,10%.log
(其中%date:~0,10% 為取當前系統時間。0為開始位置,10為結束位置)
複製代碼 代碼如下:
set files=c:\backup\%date:~0,10%.rar
set dbfilesdmp=c:\backup\%date:~0,10%db.dmp
set userdb="jbpmdemo"
set pwddb="jbpmdemo"
set domain="master.jhserver"
set filespath=c:\c\a c:\c\b
set ftpfile="c:\backup\ftp.txt"
set ftpname=admin
set ftppwd=Heroic
set ftpfiles="%date:~0,10%.rar"
set ftpdbfiles="%date:~0,10%db.rar"
set ftpdomain="192.168.0.1"
set rarpath="c:\program files\winrar"
@echo 開始備份資料庫
exp %userdb%/%pwddb%@%domain% file="%dbfilesdmp%"
@echo 開始壓縮檔
c:
cd c:\program files\winrar
rar a -r -y %files% %filespath% %dbfilesdmp%
@echo 寫入檔案ftp
@echo %ftpname%>%ftpfile%
@echo %ftppwd%>>%ftpfile%
@echo put %files% %ftpfiles%>>%ftpfile%
@echo bye>>%ftpfile%
@echo 上傳%files%.rar檔案
ftp -s:%ftpfile% 192.168.0.1
del /f /q %files%