rhel5_shell_檢測orcl資料庫pd使用者是否存在

wisdomone1發表於2010-07-30
-bash-3.2$ more monitor_pd_user.sh
source /oracle/.bash_profile ##配置shell指令碼的環境變數
output=`sqlplus '/as sysdba'<        spool /oracle/check_pd_user.txt
        select count(*) from dba_users where username='PD';##如果是v$session,在shell中要填寫為v\\$session,想特殊字元轉義處理吧
        spool off;
        exit
        EOF`
echo "$output">>/oracle/check_pd_total.log ##把以上output引數的值寫入某個log檔案
 

value=`cat /oracle/check_pd_total.log|sed -n '14,2p'`  ##用sed提取log檔案的第14行(就是上面select的結果),提供給引數value
if [ "$value" -eq "0" ];then  ##採用if else if判斷value引數的值是否為0,注意寫法,必須是 "$value",要用雙引號括起來,而不是單引號,引數前要加上$
  echo "now 192.168.0.8 database have not  pd user"
else
  echo "now 192.168.0.8 database have pd user"
fi
>/oracle/check_pd_total.log  ##處理完後,清除log檔案

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-669847/,如需轉載,請註明出處,否則將追究法律責任。

相關文章