客户端配置好服务名后,用PL/SQL Developer连接数据库时,报错:ORA-12504:TNS:监听程序在CONNECT_DATA中未获得SERVICE_NAME。一般这种情况请检查tnsnamesora文件中TNS是否配置正确,如下所示,SERVICE_NAME 名字弄错了,结果报如上错误:
GSP =
(DESCRIPTION =
(ADDRESS =(PROTOCOL = TCP)(HOST = 172203679)(PORT = 1521))
(CONNECT_DATA=
(SERVER = DEDICATED)
(SERVER_NAME = gsp)
)
)
修改为
GSP =
(DESCRIPTION =
(ADDRESS =(PROTOCOL = TCP)(HOST = 172203679)(PORT = 1521))
(CONNECT_DATA=
(SERVER = DEDICATED)
(SERVICE_NAME = gsp)
)
)
首先检查你的TNSListener服务是否已经启动状态,cmd->cd c:\ ->lsnrctl->status 看有没有报错,如果有启动日期,正常运行时间按,监听端点概要···执行成功等信息则正常,不然可以执行start命令启动监听服务看是否有报错,如果不能启动 查看:安装数据库的系统盘例如D盘 D:\oracle\product\1020\db_1\NETWORK\ADMIN\listenerora查看监听程序,看是你的oracle_sid是否被监听
(SID_DESC =
(GLOBAL_DBNAME =数据库名)
(ORACLE_HOME = D:\oracle\product\1020\db_1)
(SID_NAME = oralce_sid名)
)
如果没有没有被监听,则自己手动写上吧, 还有,LZ安装数据库之后host要是安装数据库的主机上的固定ip不能是localhost;一般来说数据启动监听服务和Oracleservice服务即可!
ORACLESERVER
=
(DESCRIPTION
=
(ADDRESS_LIST
=
(ADDRESS
=
(PROTOCOL
=
TCP)(HOST
=
192168188)(PORT
=
1521))
)
(CONNECT_DATA
=
(SERVICE_NAME
=
ORCL)
)
)
XXXX
=
(DESCRIPTION
=
(ADDRESS_LIST
=
(ADDRESS
=
(PROTOCOL
=
TCP)(HOST
=
1921681138)(PORT
=
1521))
)
(CONNECT_DATA
=
(SERVICE_NAME
=
ORCL)
)
)
正确的配置,文件应该是这样子的。你好像没有HOST这个配置吧。当然你也可以用oracle自带的net
manager
去添加。
仅代表个人观点,不喜勿喷,谢谢。
以上就是关于sqlplus连接远程数据库报错 ORA-12504: TNS: 监听程序在 CONNECT_DATA 中未获得 SERVICE_NAME全部的内容,包括:sqlplus连接远程数据库报错 ORA-12504: TNS: 监听程序在 CONNECT_DATA 中未获得 SERVICE_NAME、我登陆oracle 数据库的时候都出了这个错误 “ORA-12514:TNS: 监听程序当前无法识别连接描述符中请求的服、用PL/SQL登陆数据库的时候报错,ORA-12545 TNS 无法解析链接标示符等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)