本文介绍了ORA 12514错误:TNS侦听器错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

好,直到昨天一切都很好,我突然收到此错误
ORA-12514:TNS:listener当前不知道连接描述符中请求的服务
什么都没有修改

Ok everything worked fine till yesterday now i am suddenly getting this error
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
nothing had been modified

XE =
  (DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = jainam-2b1c493d)(PORT = 1521))
(CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = XE)
)
)

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
        (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

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


我完全被困住了,不知道该怎么办.我从这里尝试过帮助
http://dba-oracle.com/t_ora_12514_tns_listener_does_not_currently_know_service_requested.htm


I am totally stuck and have no idea what to do.I tried help from here
http://dba-oracle.com/t_ora_12514_tns_listener_does_not_currently_know_service_requested.htm but no use.Thanks



这是lsnrctl service



here's the output to lsnrctl service

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 3 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
         LOCAL SERVER
      "ORACLE SERVER" established:0 refused:0 current:0 max:25 state:ready
        CLRExtProc
     (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\NTN_6B4_641B624E_B22.ORA))
  "ORACLE SERVER" established:0 refused:0 current:0 max:25 state:ready
     CLRExtProc
     (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\NTN_6B4_641B624E_282.ORA))
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
  "DEDICATED" established:0 refused:0
     LOCAL SERVER
Service "XEXDB" has 1 instance(s).
 Instance "xe", status READY, has 1 handler(s) for this service...
 Handler(s):
  "D000" established:0 refused:0 current:0 max:1022 state:ready
     DISPATCHER <machine: JAINAM-2B1C493D, pid: 3708>
     (ADDRESS=(PROTOCOL=tcp)(HOST=jainam-2b1c493d)(PORT=2763))
Service "xe" has 1 instance(s).
Instance "xe", status READY, has 1 handler(s) for this service...
Handler(s):
  "DEDICATED" established:0 refused:0 state:ready
     LOCAL SERVER
The command completed successfully

推荐答案

出现这种错误的原因之一是因为数据库实例是在侦听器之前启动的.侦听器必须始终首先启动.

One of the reasons you get that kind of error is because database instance started before listener did. Listener must always be started first.

  1. 检查数据库实例是否已启动并正在运行
  2. 检查lsnrctl service命令的输出,并查看注册了哪些服务.
  3. 检查连接到实例时是否正确指定了SERVICE_NAME.
  4. 如果碰巧数据库实例先于侦听器启动,则有时您只需要稍等一会儿就可以执行alter system register来注册该实例.
  1. Check if a database instance is up and running
  2. Check the output of the lsnrctl service command and see what services are registered.
  3. Check if you have SERVICE_NAME correctly specified when connecting to the instance.
  4. If it happens that database instance stared before listener did, sometimes you just need to wait a little or you can execute alter system register in order to register the instance.

这篇关于ORA 12514错误:TNS侦听器错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-11 08:54