解決Oracle監聽錯誤的一種辦法


1:事出有因

安裝oracle數據庫,默認安裝的是orcl數據庫,安裝完成后查看了一下字符集是gbk的,由於業務需要al32utf8的字符集,所以需要修改字符集,但是修改卻無效.於是就刪除了默認的orcl數據庫,利用DCA新建了一個數據庫rcu,在創建過程中報錯如下

PS:不要小瞧這個警告哦,繼續的后果就是一系列的登錄不成功,監聽程序出錯。

2:解決辦法

刪除原來的數據庫,然后打開Oracle Net Manager,新增監聽地址,把主機名和localhost都添加進去,端口都是默認的1521,如下圖

a:主機名監聽

b:localhost監聽

c:配置完后,查看監聽配置

tns.ora如下:

LISTENER_BIEE =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

BIEE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = biee)
    )
  )

listener.ora如下

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = king)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = E:\app\Administrator

d:重啟數據庫監聽服務,一切OK,無論是sqlplus或者是plsql客戶端都可以登錄

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM