SCO Unix系統下定時備份Oracle數據庫dmp文件的設置
Oracle數據庫中定時對dmp文件進行備份可以提高數據庫的安全性與穩定性,以便于在出現故障時進行恢復。本文我們主要介紹了SCO Unix系統下定時備份oracle數據庫dmp文件的知識,接下來就讓我們來一起了解一下吧。
備份dmp文件的前提:
1、需要知道的信息:
- oracle 的system密碼以及要備份數據庫賬戶的賬戶名和密碼
- Sco unix 的root密碼、oracle密碼
2、會使用vi編輯文件、mkdir創建文件夾、chmod改變文件權限、su 切換用戶、文件的執行。
3、了解sco unix的用戶、組、權限及crontab的用途、oracle的dmp文件生成。
一、建立數據庫dmp文件存放目錄
- #su - oracle
- $cd /dbf
- $mkdir dmpbak
- $cd dmpbak
- $mkdir zd
- $mkdir cm
二、建立導出數據庫dmp的文件
1、指定目錄
- #su - oracle
- $cd bin
2、用vi編輯exp_t文件
$vi exp_t
exp_t內容:
- ORACLE_HOME=/oracle
- ORACLE_SID=ora7
- ORACLE_TERM=ansi
- export ORACLE_HOME ORACLE_SID ORACLE_TERM
- MENU5PATH=$ORACLE_HOME/forms30/admin/resource
- export MENU5PATH
- ORATERMPATH=$ORACLE_HOME/forms30/admin/resource
- export ORATERMPATH
- NLS_LANG=American_America.ZHS16CGB231280
- export NLS_LANG
- ORA_NLS=/oracle/ocommon/nls/admin/data
- export ORA_NLS
- home1='/dbf/dmpbak'
- dt1=`date "+%H%M"`
- echo ' ' >'$home1/'new_record
- file_name="$home1"/zd/zd"$dt1"
- echo $file_name >>'$home1'/new_record
- $ORACLE_HOME/bin/exp zd/zdzd file=$file_name.dmp owner=zd grants=y buffer=204800 rows=y indexes=y compress=y
- file_name="$home1"/cm/cm"$dt1"
- echo $file_name >>'$home1'/new_record
- $ORACLE_HOME/bin/exp common/cmcm file=$file_name.dmp owner=common grants=y buffer=204800 rows=y indexes=y compress=y
- file='/dbf/dmpbak/new_record'
- backup_dir='/oracle/sec_back'
- if [ -d $backup_dir ]
- then
- for i in `cat $file`
- do
- cp $i $backup_dir/
- done
- echo ' '>$file
- fi
3、給exp_t權限
$chmod 755 exp_t
4、測試exp_t
- $cd /oracle/bin
- $exp_t
5、查看dmp文件是否生成
- $cd /dbf/dmpbak/zd
- $ls
例如:11點35生成的文件是:1135.dmp,如果生成dmp文件,證明exp_t可以使用。
三、編輯crontab
#crontab -e 增加行:35 * * * * su - oracle -c /oracle/bin/exp_t,意思是每天每個小時的35分備份一次dmp文件,第2天的數據會覆蓋***天的數據。
關于SCO Unix系統下定時備份oracle數據庫dmp文件的知識就介紹到這里了,希望本次的介紹能夠帶給您一些幫助。
【編輯推薦】