window下自動備份資料庫成dmp格式的bat寫法,dmpbat
複製下面的命令到一個txt文字文件,然後修改對應的參數為自己需要的參數,一切完成之後,將檔案儲存為bat格式。
這樣每次需要備份的時候只需要雙擊一下這個bat檔案,其他的都不用你了,你只需要靜靜的等待……
</pre><pre code_snippet_id="494366" snippet_file_name="blog_20141023_4_5799611" name="code" class="plain">
///下面命令可以直接複製使用
@echo off echo 開始REM ########################################################### REM # Windows Server 2003下Oracle資料庫自動備份批處理指令碼 REM ########################################################### REM 取當前系統時間,可能因作業系統不同而取值不一樣 set CURDATE=%date:~0,4%%date:~5,2%%date:~8,2%set CURMON=%date:~0,4%%date:~5,2%set CURTIME=%time:~0,2%REM 小時數如果小於10,則在前面補0 if "%CURTIME%"==" 0" set CURTIME=00if "%CURTIME%"==" 1" set CURTIME=01if "%CURTIME%"==" 2" set CURTIME=02if "%CURTIME%"==" 3" set CURTIME=03if "%CURTIME%"==" 4" set CURTIME=04if "%CURTIME%"==" 5" set CURTIME=05if "%CURTIME%"==" 6" set CURTIME=06if "%CURTIME%"==" 7" set CURTIME=07if "%CURTIME%"==" 8" set CURTIME=08if "%CURTIME%"==" 9" set CURTIME=09set CURTIME=%CURTIME%%time:~3,2%%time:~6,2%REM 設定所有者、使用者名稱和密碼 set OWNER=xxx(這裡寫你的資料庫服務名)set USER=xxx(你要備份的資料庫對應的某個使用者)set PASSWORD=xxx(對應密碼)REM 建立備份用目錄,目錄結構為oraclebak/YYYYMMDD/ if not exist "oraclebak" mkdir oraclebakcd oraclebakif not exist "%CURMON%" mkdir %CURMON%set FILENAME=%CURMON%/%USER%_%CURDATE%_%CURTIME%.DMP set EXPLOG=%CURMON%/%USER%_%CURDATE%_%CURTIME%_log.log REM 調用ORACLE的exp命令匯出使用者資料exp %USER%/%PASSWORD%@%OWNER% file=%FILENAME% log=%EXPLOG% owner=%USER% grants=n
一個資料庫自動備份壓縮bat,高人解釋
1.
set zip_path="C:\Program Files (x86)\HaoZip"
rem 注意要加引號。由於之前沒加引號,後面找不到壓縮命令,所以不壓縮。
2.
注釋說明壓縮程式是什麼和參數
3.
後面連個詞都沒有,直接一堆%就行了,就是變數代表的命令。
怎設定oracle 自動備份,並且儲存最新一周的3個dmp檔案?
1.用crontab調度exp命令匯出
2.用crontab調度find命令來刪除你不要的檔案,如
find /logbak/ -atime +5 -name 'Log*' -exec /usr/bin/rm {} \;