?? backup.sh
字號:
#!/bin/bash#========================================================## 如果腳本用于crontab,下面Oracle環境變量必須設置 ##========================================================#ORACLE_BASE=/opt/oracleORACLE_HOME=$ORACLE_BASE/product/8.1.7ORACLE_SID=oradb6ORACLE_TERM=ansiORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataNLS_LANG=American_America.ZHS16GBKNLS_DATE_FORMAT=YYYYMMDDHH24MISSLD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATHTMPDIR=/var/tmpPATH=$PATH:$ORACLE_HOME/binexport ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_TERM ORA_NLS33 NLS_LANG export NLS_DATE_FORMAT LD_LIBRARY_PATH TMPDIR PATH#========================================================#BACKUPDIR=/oradata/backup; export BACKUPDIRUSER_PASSWD=dbuser/oracleRESULTFILE=/export/home/oracle/log/result.logcd $BACKUPDIRexp $USER_PASSWD log=$(date '+%Y%m%d').log file=$(date '+%Y%m%d').dmp owner=dbuser buffer=4096000 rows=nif [ $? != 0 ]then echo "`date` backup exp fail" >> $RESULTFILE exitfirm -f tables.txtsqlplus -s $USER_PASSWD <<EOF >/dev/nullset heading off;set term off;set echo off;set pagesize 0;set linesize 1000;set trimspool on;set trimout on;set feedback off;set colsep |;spool tables.txt;select table_name from user_tables;spool off;exit;EOFfor table in $(cat tables.txt)do exp $USER_PASSWD log=${table}_$(date '+%Y%m%d').log file=${table}_$(date '+%Y%m%d').dmp tables=$table direct=y if [ $? != 0 ] then echo "`date` backup exp $table fail" >> $RESULTFILE exit fidonecompress -f *.dmpecho "`date` backup succeed" >> $RESULTFILE
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -