首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

SCO Unix 定時備份 Oracle DMP 簡化版 (直接覆蓋)

     編輯:Oracle 資料庫基礎

前置條件同 95167

建立目錄與匯出腳本 exp_t

# su - oracle
$ cd /oracle/bin
$ vi 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

權限與測試:chmod 755 exp_t; ./exp_t,檔名格式如 1135.dmp (11:35 產生)。

crontab 設定 (每小時 35 分備份,隔日自動覆蓋)

# crontab -e
35 * * * * su - oracle -c /oracle/bin/exp_t

無需刪除腳本,同名檔案自然覆蓋,簡化維護。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved