匯出Oracle資料備份至ftp

2021-09-29 19:59:32 字數 1584 閱讀 4751

實際生產中需要備份oracle資料至另外一台電腦,做容災備份

涉及的工作有:

搭建ftp服務(windows)

寫乙個bat指令碼,定時匯出oracle資料檔案,並上傳至ftp

生成乙個windows定時任務,定製執行該指令碼

參考

@echo off

::修改本視窗字符集為gbk

chcp 936

::設定時間

set y=%date:~0,4%

set m=%date:~5,2%

set d=%date:~8,2%

set backdate=%y%-%m%-%d%

::如果存在檔案,先刪除

set dumpfile=d:\databak\uums\uums_%backdate%.dmp

set logfile=d:\databak\uums\uumslog_%backdate%.log

if exist %dumpfile% del %dumpfile%

if exist %logfile% del %logfile%

::使用expdp命令匯出檔案

::需要指明一下引數

::1.directory 需要在oracle中建立路徑,參考

::2.dumpfile 該引數不可新增路徑,只能填寫檔名稱

::3.logfile 該引數不可新增路徑,只能填寫檔名稱

::4.full 指明匯出該使用者所有資料

expdp uums/uums@orcl directory=uums_bak_dir dumpfile=uums_%backdate%.dmp logfile=uumslog_%backdate%.log full=y

::設定連線ftp所需引數

set localdmp=d:\databak\uums\uums_%backdate%.dmp

set locallog=d:\databak\uums\uumslog_%backdate%.log

set ftpip=10.99.58.3

set username=administrator

set password=p@ssw0rd

set datapath=.\uums

::連線ftp

echo open %ftpip% >ftp.up

echo %username%>>ftp.up

echo %password%>>ftp.up

::開啟ftp路徑並上傳檔案

echo cd %datapath% >>ftp.up

echo binary>>ftp.up

echo put %localdmp%>>ftp.up

echo put %locallog%>>ftp.up

echo bye>>ftp.up

ftp -s:ftp.up

del ftp.up /q

::刪除30天以上的檔案

set datadir=d:\databak\uums

forfiles /p "%datadir%" /s /m *.* /d -30 /c "cmd /c del @path"

參考:

Oracle 備份匯出資料庫

注 使用匯出匯入命令的時候需要進行oracle的安裝目錄下的bin目錄中 簡單匯出某一指定使用者的全部表 exp cqedu cqedu cqu file root oracle20100401.dmp exp 使用者名稱 密碼 sid名稱 file 儲存位址 如果只匯出表結構可以加入 rows n...

oracle匯出匯入備份表資料

今天遇到了乙個很常見的需求,備份資料庫資料。輕車熟路,用pl sql developer的tools export tables,選好oracle匯出程式的路徑和檔案匯出的路徑,點下右下角export即可。不過試了好幾次,下面的提示欄都已經顯示完成了,不過桌面上還是沒有dmp檔案。我首先是懷疑是pl...

oracle 資料備份匯入imp匯出exp

資料的匯出 1 將資料庫test完全匯出,使用者名稱system 密碼manager 匯出到d daochu.dmp中 exp system manager test file d daochu.dmp full y 2.將資料庫中system使用者與sys使用者的表匯出 exp system ma...