Oracle資料庫連接檢測(Shell)
1 版本資訊
Oracle資料庫版本:Oracle Release 10.2.0.1.0
系統版本:Red Hat EnterpriseLinux 5.4
2 檢測步驟
2.1 編寫Shell指令碼
在有SQLPLUS執行許可權的使用者下,編輯check_oracle_connection.sh指令碼。
vi check_oracle_connection.sh
編輯內容如下:
#!/bin/bash
#functions: connect oracle server test
#author:AresKris John
#modify_date: 2014-11-18.
mkdir -p /home/gapsv4/log/oracle #建立日誌存放路徑
LOG_DIR=/home/gapsv4/log/oracle #日誌存放路徑
rm -rf $LOG_DIR/* #刪除舊日誌
USERNAME=bodcmp #資料庫使用者名稱
PASSWORD=bodcmp #資料庫密碼
SIDNAME=ora10g #資料庫執行個體名
icount=0
while [ "$icount" -lt 100 ]
do
{
count=0
while [ "$count" -lt 100 ]
do
LOG_FILE=$LOG_DIR/check_oracle_$icount.$count.log
echo `sqlplus $USERNAME/$PASSWORD@$SIDNAME << EOF
set echo off
set feedback off
spool $LOG_FILE
alter session set nls_date_format='YYYY-MM-DD:HH24:MI:SS';
select sysdate from dual;
spool off
set echo on
set feedback on
exit
EOF` >> $LOG_FILE
let count=$count+1
done
} &
let icount=$icount+1
done
2.2 執行Shell指令碼
直接調用bash執行check_oracle_connection.sh指令碼。
bash check_oracle_connection.sh
2.3 指令碼執行結果分析
執行完指令碼之後,根據指令碼執行結果分析Oracle資料庫連接情況。情況如下:
1、如果在執行過程中有個別日誌報串連或者查詢失敗的錯誤,那麼證明Oracle資料庫連接不穩定,存在問題。
2、如果在執行過程中全部日誌報串連或者查詢失敗的錯誤,那麼證明Oracle執行個體或監聽進程未啟動。
3、如果在執行過程中無日誌報錯,那麼證明Oracle資料庫連接正常,執行個體正常運行。