
给出 你要连服务器的 listener 和数据库信息
sqlplus / as sysdba
show parameter db_name
exit
lsnrctl status
你在客户端的链接信息
tnsping orcl
sqlplus system/oracle@ORCL
askmaclean oracle
如下是解决思路:
根据出错信息判断出客户端未监听到实例服务名
1、通过重启服务的方式启动数据库,再次连接仍无法连接服务器。
2、既然第一种方法不能解决问题,那就第二种方法,考虑监听listenerora
监听配置文件listenerora中可以不必指定监听的服务名(安装Oracle10g后也是没有指定的)。正常情况下一般只要数据库启动,客户端连接数据库也没有什么问题,但是有时重复启动关闭也会出现ORA-12514错误。
既然listenerora中没有指定监听,我们可以在listenerora文件中指定监听的实例名,这样该问题应该可以连接。
步骤如下:
在oracle服务器Oracle安装目录(我的在C:\oracle下,每个人的不一样,根据自己的情况查找)Network/admin目录下找到listenerora 我的如下图所示
# listenerora Network Configuration File: C:\oracle\product\1020\db_1\network\admin\listenerora
# Generated by Oracle configuration tools
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\product\1020\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = C:\oracle\product\1020\db_1)
(SID_NAME = ORCL)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 19216859129)(PORT = 1521))
)
)
标红的为我添加的部分,ORCL为监听的实例名。
然后,oracle服务器重新启动一下,再次连接即成功,这也是我们配置完listenerora 监听后,经常忘记的,
再次尝试,可以看到客户端可以连接上oracle服务器了,而且PL/SQL再次连接也没有问题了。
打开dos,输入net start oracleserviceorcl,查看启动情况。监听程序当前无法识别连接描述符中请求的服务一般就是实例服务启动不正常,产生原因一般就是没有正常关闭数据库就关机导致,下次记得shutdown normal ,然后net stop oracleserviceorcl,然后关掉电脑,一般就没事了
此问题解决的方法和详细的 *** 作步骤如下:
1、首先,按键盘的组合键“ Win+R”,在运行窗口中输入“ servicesmsc”,按Enter键确认,如下图所示。
2、其次,完成上述步骤后,转到Orcale并启动与Oracle相关的所有服务,如下图所示。
3、接着,完成上述步骤后,转到oracle11g安装目录并找到侦听文件“ listenerora”,如下图所示。
4、然后,完成上述步骤后,打开“ listenerora”文件,添加或修改SID_NAME名称为数据库实例名称,如下图所示。
5、最后,完成上述步骤后,启动数据库并检查状态。 此时,重新连接到PL/SQL将恢复正常,重新运行生产环境并恢复正常,如下图所示。
安装好了之后可以通过这个路径找到一个文本文件:
oracle\product\1020\db_1\NETWORK\ADMIN\listenerora 还一个在同路径下的tnsnamesora文件,这两个文本中的一些信息要一样的。
你看看我的这两个文本文件的信息:
listenerora
# listenerora Network Configuration File: F:\oracle\product\1020\db_1\network\admin\listenerora
# Generated by Oracle configuration tools
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = F:\oracle\product\1020\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = F:\oracle\product\1020\db_1)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127001)(PORT = 1521))
)
)
tnsnamesora
# tnsnamesora Network Configuration File: F:\oracle\product\1020\db_1\network\admin\tnsnamesora
# Generated by Oracle configuration tools
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127001)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
以上就是关于ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务全部的内容,包括:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务、oracle数据库 ORA-12514:TNS:监听程序当前无法识别连接描述符中请求服务、重启之后连接oracle出现:ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务(重启前正常)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)