配置批處理文件
吉木薩爾網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),吉木薩爾網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為吉木薩爾近1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的吉木薩爾做網(wǎng)站的公司定做!
1
新建名為"oracleBackup"的文本文檔(名字自己定),然后重命名后綴為"oracleBackup.bat"的批處理文件。
2
在oracleBackup.bat文件上點擊右鍵,選擇編輯,填寫以下相關(guān)內(nèi)容:
rem ---------------------------------------------------------------------------
rem windows環(huán)境下Oracle數(shù)據(jù)庫的自動備份腳本。
rem 可以將本批處理設(shè)成windows任務(wù)計劃下自動執(zhí)行。
@echo off
@echo ================================================
@echo windows環(huán)境下Oracle數(shù)據(jù)庫的自動備份腳本
@echo 說明:啟動備份時,需要配置以下變量
@echo 1、BACKUP_DIR 指定要備份到哪個目錄
@echo 2、ORACLE_USERNAME 指定備份所用的Oracle用戶名
@echo 3、ORACLE_PASSWORD 指定備份所用的Oracle密碼
@echo 4、ORACLE_DB 指定備份所用的Oracle連接名
@echo 5、BACK_OPTION 備份選項,可以為空,可以為full=y,可以為owner=a用戶,b用戶 等等....
@echo 6、RAR_CMD 指定RAR命令行壓縮工具所在目錄
@echo ================================================
rem 以下變量需要根據(jù)實際情況配置------ 注意:此腳本必須放在E:\backup目錄下
set BACKUP_DIR=E:\backup
set ORACLE_USERNAME=se
set ORACLE_PASSWORD=xj
set ORACLE_DB=xj_orcl
set BACK_OPTION= OWNER=se
set RAR_CMD="C:\Program Files\WinRAR\Rar.exe"
for /f "tokens=1,2" %%a in ('date/t') do set TODAY=%%a
set BACK_NAME=%ORACLE_DB%_%TODAY%()_
set BACK_FULL_NAME=%BACKUP_DIR%\%BACK_NAME%
rem 開始備份
exp %ORACLE_USERNAME%/%ORACLE_PASSWORD%@%ORACLE_DB% %BACK_OPTION% file="%BACK_FULL_NAME%.dmp" log="%BACK_FULL_NAME%exp.log"
rem 壓縮并刪除原有文件
%RAR_CMD% a -df "%BACK_FULL_NAME%back.rar" "%BACK_FULL_NAME%.dmp" "%BACK_FULL_NAME%exp.log"
rem ---------------------------------------------------------------------------
forfiles /m *.rar -d -7 /c "cmd /c del /f @path"
3
配置相關(guān)參數(shù):
BACKUP_DIR:該參數(shù)為備份數(shù)據(jù)文件的存放位置,可根據(jù)實際情況進行設(shè)置(注:設(shè)置的文件路徑不允許包含漢字、特殊字符等內(nèi)容)。
ORACLE_USERNAME:該參數(shù)為指定備份的Oracle數(shù)據(jù)庫用戶名。
ORACLE_PASSWORD:該參數(shù)為指定備份的Oracle數(shù)據(jù)庫密碼。
ORACLE_DB:該參數(shù)為指定備份的Oracle數(shù)據(jù)庫連接名。
BACK_OPTION:該參數(shù)為備份選項,可以為空,也可以為full=y等。
RAR_CMD:指定RAR命令行壓縮工具所在目錄
END
安裝軟件
1
下載WINRAR安裝包。
2
點擊"wrar520sc_setup.exe",進行安裝軟件。
3
根據(jù)軟件的安裝路徑,在命名的bat處理文件中配置:RAR_CMD參數(shù)。
END
添加定時任務(wù)
打開電腦的控制面板,選擇"任務(wù)計劃",雙擊打開。頁面如圖所示:
雙擊打開添加定時任務(wù),點擊下一步進入相關(guān)設(shè)置頁面。頁面如圖所示:
單擊瀏覽按鈕,找到oracleBackup.bat文件添加,然后進行配置:根據(jù)實際情況選擇要備份的時間類型,此處以每天執(zhí)行為例,選擇每天,點擊下一步,設(shè)置執(zhí)行時間。
輸入執(zhí)行定時任務(wù)機器的用戶名及密碼,點擊下一步,進入完成界面,點擊完成,至此,Oracle數(shù)據(jù)庫定時任務(wù)備份的設(shè)置。
5
利用修改機器時間進行定時任務(wù)的測試。
Oracle數(shù)據(jù)庫RMAN的自動備份腳本簡介
各位同學知道Oracle數(shù)據(jù)庫RMAN如何自動備份腳本嘛?下面我為大家整理了關(guān)于Oracle數(shù)據(jù)庫RMAN的自動備份腳本文章,希望能為你提供幫助:
1、數(shù)據(jù)庫設(shè)置為歸檔方式
2、數(shù)據(jù)庫的備份腳本
db_full_backup.sh :數(shù)據(jù)庫全備腳本
db_l0_backup.sh :數(shù)據(jù)庫0級備份腳本
db_l1_backup.sh :數(shù)據(jù)庫1級備份腳本
:數(shù)據(jù)FTP上傳腳本
ftp_del.sh :數(shù)據(jù)FTP清理腳本
rman_bak.sh :數(shù)據(jù)備份主程序
3、備份原理
每周1、3、6進行0級備份
每周日、2、4、5進行1級備份
備份文件上傳到FTP服務(wù)器
FTP服務(wù)器每周清理一次,但是清理后將周六和周日的備份進行保留(6.bak和0.bak)
所有工作防暑crontab中自動執(zhí)行備份
4、備份目錄含義
arc :數(shù)據(jù)庫歸檔目錄
rmanbak :數(shù)據(jù)庫備份文件的保存目錄
rmanscripts :數(shù)據(jù)庫腳本存放路徑
5、FTP目錄
ftp上必須手動建立目錄
L0:
---1
---3
---6
---6.bak
L1:
---2
---4
---5
---0
---0.bak
rman_bak.sh腳本主程序
#!/bin/bash
#--------------------------------------------
# Oracle auto backup using rman
#
# author:songrh
# week:1,3,6 Level 0 backup
# 2,4,5,0 Level 1 backup
# Copyright by ChenLong Tec
#--------------------------------------------
#
#
export ORACLE_BASE=/u02/oracle
export ORACLE_HOME=/u02/oracle/product/9.2.4
export ORACLE_SID=PROD
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export NLS_LANG=american_america.ZHS16GBK
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NL33=$ORACLE_HOME/ocommon/nls/admin/data
export PATH=/bin:/usr/bin:/usr/sbin:$ORACLE_HOME/bin:$PATH
export PATH=$PATH:/opt/local/bin
#
SH_PATH=/u02/rmanscripts
ARC_PATH=/u02/arch
RMAN_BAK_PATH=/u02/rmanbak
#
#FULL_PATH=$RMAN_BAK_PATH/full
L0_PATH=$RMAN_BAK_PATH/L0
L1_PATH=$RMAN_BAK_PATH/L1
#
#DAY_TAG=`date "%Y-%m-%d"`
LOG_TAG=`date "%Y-%m-%d"`
#FIRST_DAY=`date %e`
WEEK=`date %w`
#WEEK=1
#
# FTP configure
IP="122.120.150.155"
FTPUSER="ftpbak"
FTPPASS="******"
FTPROOT0="L0"
FTPROOT1="L1"
#
DISK_USE=`df -k |sed -n '/u02/'p | awk '{print $5}' |sed 's/%//'`
####check path function
############
if [[ $DISK_USE -ge 90 ]]; then
rm -rf $L0_PATH/*
rm -rf $L1_PATH/*
fi
if [ "$WEEK" = "6" -o "$WEEK" = "3" -o "$WEEK" = "1" ]; then
if [ ! -d $L0_PATH ]; then
mkdir $L0_PATH
fi
if [ "$WEEK" = "1" ]; then
rm -rf $L0_PATH/*
rm -rf $L1_PATH/*
mkdir $L0_PATH/$WEEK
$SH_PATH/db_l0_backup.sh $L0_PATH/$WEEK
cd $L0_PATH/$WEEK
$SH_PATH/ftp_del.sh $IP $FTPUSER $FTPPASS $FTPROOT0 $WEEK $WEEK_$LOG_TAG.log
else
if [ ! -d $L0_PATH/$WEEK ]; then
mkdir $L0_PATH/$WEEK
$SH_PATH/db_l0_backup.sh $L0_PATH/$WEEK
cd $L0_PATH/$WEEK
$SH_PATH/ $IP $FTPUSER $FTPPASS $FTPROOT0 $WEEK $WEEK_$LOG_TAG.log
else
;
登陸oracle數(shù)據(jù)庫服務(wù)器,利用plsql程序來登陸數(shù)據(jù)庫。在用戶名、密碼、數(shù)據(jù)庫的地方分別輸入對應(yīng)的用戶名、密碼和數(shù)據(jù)庫實例名稱。
2
登陸完成后,新建sql窗口,并在sql窗口中執(zhí)行以下語句:
-----------------------------------------------------------------------------
declare stmt
varchar2(200);begin for tb in (select table_name from user_tables where
segment_created='NO') loop stmt:='alter table '||tb.table_name||'
allocate extent'; begin execute immediate stmt; exception when
others then dbms_output.put_line(stmt); end; end loop;end;/
-----------------------------------------------------------------------------
此語句的作用是導出oracle 11g的空表
3
建立bat批處理文件
------------------------------------------------------------------------------
cd d:\bea\dbbackdel oa%date:~8,2%.dmpexpdp username/password@orcl directory=DIR_EXP dumpfile=oa%date:~8,2%.dmp
------------------------------------------------------------------------------
其中d:\bea\dbback是命令所在的目錄
username/password@orcl 分別為登陸數(shù)據(jù)庫的用戶名、密碼、數(shù)據(jù)庫實例
DIR_EXP 是在plsql中建立的directory即目錄,需要根據(jù)自己的需求來創(chuàng)建
在電腦附件中找到任務(wù)計劃程序,然后點擊打開,如下圖
點擊右側(cè)的“創(chuàng)建基本任務(wù)”,創(chuàng)建一個任務(wù)計劃,填寫任務(wù)名字和描述,如下圖:
設(shè)置任務(wù)的執(zhí)行周期,這里周期選擇每天,點擊下一步
再設(shè)置開始時間,一般選擇在夜間備份數(shù)據(jù)庫,點擊下一步
設(shè)置執(zhí)行的操作是,這里是批處理,所以選擇程序,點擊下一步
選擇前面我們只做的bat批處理文件。即oracle備份語句文件。參數(shù)填寫文件所在的目錄,點擊下一步:
點擊完成即可。
然后雙擊對應(yīng)的計劃任務(wù)名稱,出現(xiàn)界面如下圖:
然后在安全選項中選擇“不管用戶是否登陸都要運行此程序”
步驟閱讀
然后點擊確定,系統(tǒng)會讓用戶輸入對應(yīng)的系統(tǒng)登陸密碼,如下圖,輸入完密碼點擊確定即可。
Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關(guān)系數(shù)據(jù)庫管理系統(tǒng)。它是在數(shù)據(jù)庫領(lǐng)域一直處于領(lǐng)先地位的產(chǎn)品。下面我為大家分享一下oracle數(shù)據(jù)庫自動備份系統(tǒng)的 方法 ,有需要的可以參考一下!
oracle數(shù)據(jù)庫自動備份系統(tǒng)
實現(xiàn)過程:
1. 建立文件 backup.bat (自定義文件名.bat)
@echo off
REM ###########################################################
REM # Windows Server 2003下Oracle數(shù)據(jù)庫自動備份批處理腳本
REM ###########################################################
REM 取當前系統(tǒng)時間,可能因 操作系統(tǒng) 不同而取值不一樣
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 小時數(shù)如果小于10,則在前面補0
if "%CURTIME%"==" 0" set CURTIME=00
if "%CURTIME%"==" 1" set CURTIME=01
if "%CURTIME%"==" 2" set CURTIME=02
if "%CURTIME%"==" 3" set CURTIME=03
if "%CURTIME%"==" 4" set CURTIME=04
if "%CURTIME%"==" 5" set CURTIME=05
if "%CURTIME%"==" 6" set CURTIME=06
if "%CURTIME%"==" 7" set CURTIME=07
if "%CURTIME%"==" 8" set CURTIME=08
if "%CURTIME%"==" 9" set CURTIME=09
set CURTIME=%CURTIME%%time:~3,2%%time:~6,2%
REM 設(shè)置所有者、用戶名和密碼
set OWNER=orcl
set USER=bktcgl
set PASSWORD=bktcgl
REM 創(chuàng)建備份用目錄,目錄結(jié)構(gòu)為oraclebak/YYYYMMDD/
if not exist "oraclebak" mkdir oraclebak
cd oraclebak
if not exist "%CURMON%" mkdir %CURMON%
set FILENAME=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%.DMP
set EXPLOG=%CURMON%/%OWNER%_%CURDATE%_%CURTIME%_log.log
REM 調(diào)用ORACLE的exp命令導出用戶數(shù)據(jù)
exp %USER%/%PASSWORD%@%OWNER% file=%FILENAME% log=%EXPLOG% owner=%USER% grants=n
exit
注:
1.bat文件可雙擊或直接在命令行執(zhí)行,檢查正確與否
2.檢查時可注釋掉exit
3.以上文件實現(xiàn)按月份創(chuàng)建文件夾,按時間生成備份文件
2.建立windows任務(wù)
步驟:
開始 - 所有程序 - 附件 - 系統(tǒng)工具 - 任務(wù)計劃程序 - 操作 - 創(chuàng)建基本任務(wù)
- 任務(wù)名輸入"oracle_backup"(自定義任務(wù)名),執(zhí)行這個任務(wù)選擇每天,下一步
- 起始時間下午12:00,起始日期2012-7-11,下一步 -(啟動程序)下一步
-在 瀏覽 中查找剛剛寫好的 backup.bat 文件 下一步 完成
注:
1.在任務(wù)計劃欄目下新增一個名為"oracle_backup"的任務(wù)計劃,表明已經(jīng)配置完畢。
2.不同系統(tǒng)的任務(wù)計劃略有不同,但基本換湯不換藥,不做一一例舉
問題:系統(tǒng)警告"已創(chuàng)建新任務(wù),但可能不能運行,因為無法設(shè)置賬戶信息。指定的錯誤是:Ox80041315:任務(wù)計劃程序服務(wù)沒有運行"
原因:電腦的任務(wù)計劃程序服務(wù)沒有啟動起來。
解決:開始 所有程序 管理工具 服務(wù),找到"Task Scheduler"服務(wù),發(fā)現(xiàn)啟動類型為"已禁用",
右鍵單擊更改為"自動",并把它啟動起來,然后重新添加一次任務(wù)計劃就可以了。
3.簡單解釋
1. bat:是dos下的批處理文件。批處理文件是無格式的文本文件,它包含一條或多條命令。在命令提示下鍵入批處理文件的名稱,或者雙擊該批處理文件,系統(tǒng)就會調(diào)用 Cmd.exe按照該文件中各個命令出現(xiàn)的順序來逐個運行它們。
2. Echo 命令:打開回顯或關(guān)閉請求回顯功能,或顯示消息。
3. @ 命令:表示不顯示@后面的命令
4. Rem 命令:注釋命令
5. If命令:if表示將判斷是否符合規(guī)定的條件,從而決定執(zhí)行不同的命令。
6. exit :退出命令行
7. GRANTS: 是權(quán)限的意思,在你導出的目標數(shù)據(jù)庫中可能會有一些表的如select 權(quán)限等賦給了別的用戶。
【GRANTS=Y】導出的時候?qū)⑦@些權(quán)限導出,導入的時候?qū)⑦@些權(quán)限導入。
【GRANTS=N】權(quán)限不被導入。
本文題目:oracle怎么自動備份,oracle數(shù)據(jù)庫怎么備份
當前路徑:http://vcdvsql.cn/article20/hspgco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、網(wǎng)站營銷、定制網(wǎng)站、App開發(fā)、虛擬主機、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)