Skip to main content
黑话筒

Oracle 10g错误:ora-12516 TNS:监听程序找不到匹配协议栈的可用处理程序

前天安装了Oracle 10g,安装时仅安装的软件,没有建库。之后自己建了一个库,实例名叫diamond。然后又建立了一个监听,运行PL/SQL,登陆时出现错误:ora-12516 TNS:监听程序找不到匹配协议栈的可用处理程序。

然后在网上找解决办法,终于在ITPub上找到了解决方法。 修改listener.ora,原来的部分内容为:

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

现在要修改为:

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

其中的diamond是数据库的实例名。 重新启动一下监听和Oracle数据库,问题解决。 我不了解这段的内容,但从字面上,感觉应该是制定一个具体的实例信息(SID_DESC)

参考:關於Listener的問題