Oracle資料庫連線問題排查思路

2021-07-27 08:21:01 字數 1847 閱讀 3064

本文分享了自己在使用oracle資料庫時,遇到連線問題的排查方法。

最基本的,要想連線,資料庫本身得是正常執行著的。

linux需要先執行,windows直接開啟cmd

su - oracle。

以dba角色登入本地資料庫。連這個都連不上,說明資料庫沒啟動好。

要排查資料庫本身的問題。

sqlplus / as sysdba。

連線以後查詢資料庫狀態

select open_mode from v$database;。

這裡一般有以下狀態

mount:載入profile啟動模式

nomount:未載入profile啟動模式

read/write:正常

如果是nomount

alter database mount;

如果是mount

alter database open;

oracle監聽就是oracle服務的耳朵,資料庫服務可以直接通過sqlplus連線,但對網路客戶端的訪問,就要靠它來完成。

監聽狀態檢視

lsnrctl status

監聽啟動

lsnrctl start

監聽停止

lsnrctl stop

監聽狀態異常,當然是要重啟的,上面幾個命令執行就ok。

監聽啟動出錯,檢視listener.ora是否配置錯誤

$oracle_home\network\admin

監聽狀態正常但是啟動時特別慢,就要檢視監聽的日誌是否過大,讀寫緩慢。

這個現象重點提一下:客戶端、第三方軟體訪問時特別慢,但服務端直接sqlplus訪問卻很快

日誌檔案位置查詢。

adrci

檢視警告日誌

show alert

檢視跟蹤日誌

show tracefile

刪了它們就可以了。當然,最好先備份一下再刪更好。

linux命令:

rm

要想連線,網路一定要通。

客戶端測試連線,以下例子中192.168.x.x為服務端ip

網路連線ping

ping 192.168.x.x

跟蹤路由跳轉

tracert 192.168.x.x

埠測試

telnet 192.168.x.x

網路不通,要檢查網路線路是否通暢,服務端防火牆設定。

windows防火牆

控制面板–系統安全–windows防火牆-開啟或關閉防火牆

linux防火牆

iptables命令

只是分享一下思路,命令的使用只是新手,見笑了。具體問題還要具體分析。

資料庫鎖問題排查

oracle awr sql執行等資訊 alert 報錯資訊 trance日誌 1 檢視哪些會話鎖了哪些表 select l.session id,o.owner,o.object name from v locked object l,dba objects o where l.object id...

連線Oracle資料庫

先將system.data.oralceclient.dll檔案拷貝專案目錄的bin目錄下,通常位於c windows microsoft.net franmework v.1.1.4322目錄中.連線字串 string oracle connstr data source oracle9i int...

連線Oracle資料庫

先將system.data.oralceclient.dll檔案拷貝專案目錄的bin目錄下,通常位於c windows microsoft.net franmework v.1.1.4322目錄中.連線字串 string oracle connstr data source oracle9i int...