ORA-12514: TNS: 監聽程序當前無法識別連接描述符中請求的服務!

最近開機後,打開PL/SQL 輸入用戶米 密碼總報標題的錯誤。

我在兩臺機器都發現了這個錯誤,開始以爲PL/SQL問題,結果用ORACLE的SQL PLUS問題依舊。

BAIDU了一下,找到了解決辦法。

oracle 10G:

D:\oracle\product\10.1.0\db_1\NETWORK\ADMIN目錄下的listener.ora文件。

問題都在這個文件上。

該文件原文如下:

# listener.ora Network Configuration File: D:\oracle\product\10.1.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.1.0\db_1)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
      )
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      )
    )
  )

 


操作:

在  (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.1.0\db_1)
      (PROGRAM = extproc)
    )

後面添加

(SID_DESC =
  (GLOBAL_DBNAME = orcl)
  (ORACLE_HOME = D:\oracle\product\10.1.0\db_1)
  (SID_NAME = orcl)
  )

網上的一些文章沒注意這點,由於每個人的數據庫SID不同。所以加的這段話的GLOBAL_DBNAME和SID_NAME

都是你的數據庫的SID。而且ORACLE_HOME也不同要根據原文的ORACLE_HOME來寫。

 

修改完的listener.ora爲:

# listener.ora Network Configuration File: D:\oracle\product\10.1.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = D:\oracle\product\10.1.0\db_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
  (GLOBAL_DBNAME = orcl)
  (ORACLE_HOME = D:\oracle\product\10.1.0\db_1)
  (SID_NAME = orcl)
  )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
      )
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      )
    )
  )
重啓服務。OK!!!


如果以上工作還沒成功的話,那麼就把(HOST = localhost)  的HOST改成你的實際IP地址,就算寫127.0.0.1也可以。

 

發佈了40 篇原創文章 · 獲贊 0 · 訪問量 1721
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章