windows 全量+增量備份指令碼bat
@set ORACLE_HOME=D:\app\Administrator\product\11.2.0\dbhome_1
@rem echo %ORACLE_HOME%
@set ORACLE_SID=orcl
@rem echo %ORACLE_SID%
@set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
@rem echo %NLS_LANG%
@set PATH=%ORACLE_HOME%\bin
@rem echo %PATH%
@set RMAN=%ORACLE_HOME%\BIN\rman.exe
@rem *******************獲取系統時間,擷取yyyy-dd-mm ******************************
@rem*******************如果獲取的時間不對,請修改系統時間格式 yyyy-mm-dd dddd*****************************
@rem MONTH=%date:~0,10%
@set MONTH=%date:~0,4%%date:~5,2%%date:~8,2%
@set BACKUP_DIR=C:\%MONTH%
@IF NOT EXIST %BACKUP_DIR% (
mkdir %BACKUP_DIR%
)
@set RQ=%date:~0,4%%date:~5,2%%date:~8,2%
@set RMAN_LOG_FILE=%BACKUP_DIR%\rman_%RQ%.log
@rem echo %RMAN_LOG_FILE%
@rem *******************連線rman 根據實際情況修改******************************
@rem TARGET_CONNECT_STR=/
@set DAY=%date:~12,13%
@REM 0級備份就是進行全庫備份,level 1就是備份level 0後改變的資料,level 2就是備份level 1或level 0後改變的資料
@REM 如果前一個備份是level 1那麼就備份這之後修改的資料,如果前個備份是level 0那麼就備份level 0後的資料
@echo ==== started on %DATE% ==== >>%RMAN_LOG_FILE%
@set BACKUPTYPE=incremental level 2 database
@set NAME=L2_%%d_%%T_%%s_%%U
@if "%DAY%" EQU "一" (
set BACKUPTYPE=incremental level 2 database
set NAME=inc2_%%d_%%T_%%s_%%U
set ARCHIVE=arch2_%%d_%%T_%%U
)
@if "%DAY%" EQU "二" (
set BACKUPTYPE=incremental level 2 database
set NAME=inc2_%%d_%%T_%%s_%%U
set ARCHIVE=arch2_%%d_%%T_%%U
)
@if "%DAY%" EQU "三" (
set BACKUPTYPE=incremental level 1 database
set NAME=inc1_%%d_%%T_%%s_%%U
set ARCHIVE=arch1_%%d_%%T_%%U
)
@if "%DAY%" EQU "四" (
set BACKUPTYPE=incremental level 2 database
set NAME=inc2_%%d_%%T_%%s_%%U
set ARCHIVE=arch2_%%d_%%T_%%U
)
@if "%DAY%" EQU "五" (
set BACKUPTYPE=incremental level 2 database
set NAME=inc2_%%d_%%T_%%s_%%U
set ARCHIVE=arch2_%%d_%%T_%%U
)
@if "%DAY%" EQU "六" (
set BACKUPTYPE=incremental level 2 database
set NAME=inc2_%%d_%%T_%%s_%%U
set ARCHIVE=arch2_%%d_%%T_%%U
)
@if "%DAY%" EQU "日" (
set BACKUPTYPE=incremental level 0 database
set NAME=full0_%%d_%%T_%%s_%%U
set ARCHIVE=arch0_%%d_%%T_%%U
)
@REM backup format 'e:\backup\dbL0_%d_%T.arc' archivelog all delete input;
@rem echo backup %BACKUPTYPE% include current controlfile;
@rem echo sql "ALTER SYSTEM ARCHIVE LOG CURRENT";
@(
echo run {
echo allocate channel Channel1 type disk format '%BACKUP_DIR%\%NAME%';
echo allocate channel Channel2 type disk format '%BACKUP_DIR%\%NAME%';
echo allocate channel Channel3 type disk format '%BACKUP_DIR%\%NAME%';
echo allocate channel Channel4 type disk format '%BACKUP_DIR%\%NAME%';
echo backup section size 4G filesperset 1 %BACKUPTYPE% include current controlfile;
echo sql "ALTER SYSTEM ARCHIVE LOG CURRENT";
echo backup format '%BACKUP_DIR%\%ARCHIVE%' archivelog all delete input;
echo backup current controlfile format '%BACKUP_DIR%\ctl_%d_%T_%s_%%U';
echo }
) | %RMAN% target / nocatalog msglog '%RMAN_LOG_FILE%'
@set ERRLEVEL=%ERRORLEVEL%
@if %ERRLEVEL% NEQ 0 @goto err
@set LOGMSG="備份成功!!"
@goto end
:err
@set LOGMSG="備份失敗,請重試!!!"
:end
@echo # >> %RMAN_LOG_FILE%
@echo ==== %LOGMSG% on %DATE% ==== >> %RMAN_LOG_FILE%
@endlocal
@REM End of Main Program -----------------------------------------------------
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30345407/viewspace-2700665/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- windows mysqldump備份指令碼WindowsMySql指令碼
- mysqldump全量備份+mysqlbinlog二進位制日誌增量備份MySql
- innobackupex備份mysql大資料(全量+增量)操作記錄MySql大資料
- windows bat指令碼睡眠等待WindowsBAT指令碼
- MySQL:Windows下分庫備份指令碼MySqlWindows指令碼
- 【Xtrabackup】Xtrabackup全備、增量備份及恢復示例
- windows 批處理備份目錄指令碼Windows指令碼
- Windows環境PgSql自動備份指令碼WindowsSQL指令碼
- 備份指令碼指令碼
- Windows bat指令碼之for迴圈用法WindowsBAT指令碼
- EXP增量備份
- Xtrabackup增量備份
- Xtrabackup全量備份
- rman 備份指令碼指令碼
- mysql備份指令碼MySql指令碼
- ORACLE備份指令碼Oracle指令碼
- mysql全量備份並中文不亂碼MySql
- 自動備份指令碼指令碼
- 記windows自定義bat指令碼自啟動WindowsBAT指令碼
- Windows ntp時間同步設定(bat指令碼)WindowsBAT指令碼
- rman 增量備份恢復
- MySQL 定時增量備份MySql
- oracle資料庫備份之exp增量備份Oracle資料庫
- expdp 邏輯備份指令碼指令碼
- 資料庫備份指令碼資料庫指令碼
- 兩套mysql備份指令碼MySql指令碼
- windows bat指令碼 後臺執行目標exeWindowsBAT指令碼
- [20221020]奇怪的增量備份.txt
- oracle自動冷備份指令碼Oracle指令碼
- MySQL中binlog備份指令碼分享MySql指令碼
- 分享Oracle Rman的備份指令碼Oracle指令碼
- 使用shell 指令碼備份資料指令碼
- ORACLE常用定時備份指令碼Oracle指令碼
- Windows使用bat指令碼指定jdk版本啟動jar包WindowsBAT指令碼JDKJAR
- easytier 在windows上快捷安裝“服務”bat指令碼WindowsBAT指令碼
- oracle 增量備份恢復驗證Oracle
- 常用指令碼學習手冊——Bat指令碼指令碼BAT
- Mysql定時備份資料指令碼MySql指令碼