oracle監聽啟動不了的問題

2021-06-16 02:10:34 字數 2384 閱讀 5753

1 問題描述

oracle資料庫在伺服器上執行正常,但是不能通過網路連線(即使用客戶端不能連線資料庫,在伺服器端正常,診斷的初步原因為***問題)。在伺服器端使用以下命令:

bash-3.1$ cd $oracle_home/bin

bash-3.1$ ./lsnrctl

lsnrctl> status

結果出現:

connect (description=(address=(protocol=ipc)(key=extproc1)))

然後就停止不動了,使用

lsnrctl> start

後沒有任何反應,其結果是***啟動不了。

2 分析問題

首先,使用以下命令

bash-3.1$ cd $oracle_home/network/admin

bash-3.1$ dir

後,發現listener.ora和tnsnames.ora檔案都在該目錄下,然後

bash-3.1$ gedit listener.ora

裡面有部分內容如下:

listener =

(description_list =

(description =

(address = (protocol = ipc)(key = extproc1))

(address = (protocol = tcp)(host = rhel)(port = 1521)) ) )

然後,再檢視tnsnames.ora檔案

bash-3.1$ gedit tnsnames.ora

裡面的內容如下:

orcl =

(description =

(address = (protocol = tcp)(host = rhel)(port = 1521))

(connect_data =

(server = dedicated)

(service_name = orcl) ) )

使用hostname命令來檢視主機名是否有錯,如下

bash-3.1$ hostname

得到的結果是:rhel

至此,這兩個檔案都很正常,說明監聽的配置是沒有問題的,於是想到問題可能出在伺服器的ip上。

檢視一下伺服器的網路配置,果然發現原來伺服器有多個ip位址處於活躍狀態,而我們的oracle監聽的是主機名(我的機器是rhel,可以從上面的紅色字型中看到)。因此,當伺服器上出現多個活躍的ip時,***就無法確定該監聽哪個ip,這樣就會出現監聽無法啟動的問題。

3 解決問題

解決的辦法是直接將***配置為監聽ip,其解決的辦法是,修改上述的兩個檔案(listener.ora和tnsnames.ora檔案)中的紅色字型標記的地方,將原來的主機名改為你所要監聽的ip位址(指你的資料庫伺服器向應用程式提供的ip位址,我的資料庫伺服器的ip是192.168.0.110),我的更改是:

修改listener.ora檔案中的listener,修改後為:

listener =

(description_list =

(description =

(address = (protocol = ipc)(key = extproc1))

(address = (protocol = tcp)(host = 192.168.0.110)(port = 1521)) ) )

然後再修改tnsnames.ora中的orcl,修改後為:

orcl =

(description =

(address = (protocol = tcp)(host = 192.168.0.110)(port = 1521))

(connect_data =

(server = dedicated)

(service_name = orcl) ) )

然後,在重啟***即可,其具體做法為:

bash-3.1$ ./lsnrctl

lsnrctl> stop

lsnrctl> start

***成功啟動,至此,問題圓滿解決。

4 結束語

***無法啟動的問題,一般情況下是監聽的配置問題或者是主機ip的問題。該問題也可能出現在「主機ip被修改」的情況。如果你經常需要更改主機ip,但是你的主機只有乙個網絡卡的話,那麼監聽配置最好用主機名,如果你的主機有多個網絡卡,那麼監聽配置最好用你的資料庫伺服器ip。當然,修改配置的話,還可以用圖形介面的來改,在windows下直接使用net manager來改,如果是linux系統的話,可以使用$oracle_home/bin目錄下的netmgr命令來調出圖形介面。

li rong-hua,2009.1.8記

啟動oracle 監聽

bash 2.05 lsnrctl start lsnrctl for solaris version 9.2.0.1.0 production on 06 dec 2005 10 40 38 starting opt oracle product 9.2.0 bin tnslsnr please ...

oracle 監聽無法啟動問題

oracle 監聽服務無法啟動的問題,造成這種的問題的原因可能有很多。這裡只講一下自己親身經歷的情況,在學習oracle的過程中一直使用的是伺服器上的oracle,自己電腦上裝的oracle一直沒有用 開始是有用的啦 覺得有點浪費 所以就打算用本地的oracle進行一些簡單的操作。開啟sql dev...

oracle強行啟動監聽

解決方法一 在listener.ora裡面新增了一行 sid list listener sid list sid desc global dbname orcl sid name orcl 注 裡面的orcl根據你安裝的資料庫例項名確定,我用此法解決了這個報錯。解決方法二 登入資料庫 sqlplu...