您的位置:首页 > 其它

ORA-12505:TNS:监听程序当前无法识别连接描述符中所给出的SID

2012-03-23 15:51 429 查看
有一台测试用数据库,连接数据库提示:ORA-12505:TNS:监听程序当前无法识别连接描述符中所给出的SID

首先我考虑到是否是本机电脑上的tnsnames.ora配置是否正确:

HBVOD_192.168.2.11 =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.11)(PORT = 1521))

)

(CONNECT_DATA =

(SID = hbvod)

(SERVER = DEDICATED)

)

)

检查SID、数据库地址(HOST)、PORT等都是正确的。

SSH登录到数据库上,查看tnsnames.ora是否正确

cat $ORACLE_HOME/network/admin/tnsnames.ora

HBVOD =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = oracle)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = hbvod)

)

)

查看配置也是正确的,但是我观察HOST = oracle ,也就是我的数据库主机名是oracle ,我的数据库地址是192.168.2.11,我立即在数据库本机上ping oracle看是否可以Ping通就返回地址是否是192.168.2.11,发现无法ping通oracle.

vi /etc/hosts 发现以下对应关系:

192.168.2.2 oracle localhost.localdomain localhost

原来hosts对应关系不对,把hosts配置文件改动成如下:

192.168.2.11 oracle localhost.localdomain localhost

再次用PL*SQL登录192.168.2.11数据库,成功登录。

后来经过回忆,原来是数据库更改过IP地址,但是没有更新相应的HOSTS配置文件,造成无法解析数据库名称导致无法使用PL*SQL登录数据库。

本文出自 “多年之后” 博客,请务必保留此出处http://findyou.blog.51cto.com/1029216/815057
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐