关于Oracle的tns登录的问题

孙大诚_SunRobin 2014-01-13 09:59:33
刚刚接触Oracle,有些东西不明白。Basic登录明白,通过ip,端口什么的容易理解。Tns是什么?为什么我通过tns登录报异常
Status : Failure -Test failed: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor


GVPEFT01 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = segotl0865.srv.volvo.com)(PORT = 1523))
)
(CONNECT_DATA =
(SID = gvpeft01)
(SERVER = DEDICATED)
)
)

但是我通过basic方式连接,就能连上,这是为什么?
...全文
293 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
孙大诚_SunRobin 2014-01-17
  • 打赏
  • 举报
回复
引用 3 楼 zlloct 的回复:
很有可能是你连接的别名中所定义的SERVER在服务端没有ONLINE。
谢谢。不过还是不太明白“连接的别名中所定义的SERVER在服务端没有ONLINE”是什么意思。服务器对于tns和basic方式过来的连接,处理方式还不一样吗?
CT_LXL 2014-01-13
  • 打赏
  • 举报
回复
引用 楼主 sundacheng1989 的回复:
刚刚接触Oracle,有些东西不明白。Basic登录明白,通过ip,端口什么的容易理解。Tns是什么?为什么我通过tns登录报异常 Status : Failure -Test failed: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor GVPEFT01 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = segotl0865.srv.volvo.com)(PORT = 1523)) ) (CONNECT_DATA = (SID = gvpeft01) (SERVER = DEDICATED) ) ) 但是我通过basic方式连接,就能连上,这是为什么?
其实就好比域名解析定义了一个别名。当你用别名进行连接的时候,ORACLE会自动的在这个文件中映射别名所对应的详细信息(IP,端口等),从而连接到服务端。 在服务端配置LISTENER文件来监听客户端的连接从而进行响应
Wentasy 2014-01-13
  • 打赏
  • 举报
回复
看到很多关于监听和TNS的问题,只要满足以下几点: 1.你写的配置文件符合规范; 2.如果有GRID,监听写在GRID产品里,TNS写在数据库产品里; 3.语法实在不会,可以参考一些图形工具(比如netca、netmgr)生成的监听或者TNS文件; 4.数据库产品正常运行; 只要满足以下几点一般不会出问题的。TNS可以类比IP地址和域名来理解。
zhaoyuup 2014-01-13
  • 打赏
  • 举报
回复
个人觉得你的监听文件写的有问题 把监听文件改写如下试试: GVPEFT01 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = segotl0865.srv.volvo.com)(PORT = 1523)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = gvpeft01) ) )
CT_LXL 2014-01-13
  • 打赏
  • 举报
回复
很有可能是你连接的别名中所定义的SERVER在服务端没有ONLINE。
孙大诚_SunRobin 2014-01-13
  • 打赏
  • 举报
回复
引用 1 楼 zlloct 的回复:
[quote=引用 楼主 sundacheng1989 的回复:] 刚刚接触Oracle,有些东西不明白。Basic登录明白,通过ip,端口什么的容易理解。Tns是什么?为什么我通过tns登录报异常 Status : Failure -Test failed: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor GVPEFT01 = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = segotl0865.srv.volvo.com)(PORT = 1523)) ) (CONNECT_DATA = (SID = gvpeft01) (SERVER = DEDICATED) ) ) 但是我通过basic方式连接,就能连上,这是为什么?
其实就好比域名解析定义了一个别名。当你用别名进行连接的时候,ORACLE会自动的在这个文件中映射别名所对应的详细信息(IP,端口等),从而连接到服务端。 在服务端配置LISTENER文件来监听客户端的连接从而进行响应[/quote] 用basic的方式连接就没用问题,用别名就会抛出异常,可能是哪里的问题呢?

17,382

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧