免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2352 | 回复: 0
打印 上一主题 下一主题

Oracle10g liistener 连不上与listener.ora, /etc/hosts 的关系 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-02 03:27 |只看该作者 |倒序浏览
如果你在建好Oracle数据库,在客户端连不上。Oracle 提示:
ERROR:
ORA-12541: TNS:no listener

你可以检查server上的listener.ora 和 /etc/hosts. 如果在listener.ora中有
.......
   (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) 
........
而且在/etc/hosts中 有
127.0.0.1  本机名  localhost localhost.localdomain
port 1521 没有对外开放,你在客户端是连不上数据库的, 在本机用sqlplus 可以, 因为本机不用listener。

你可以修改 listener.ora
.......
   (ADDRESS = (PROTOCOL = TCP)(HOST = 你的网路IP)(PORT = 1521)) 
........

然后用
lsnrctl stop
lsnrctl start

不要用lsnrctl reload. 现在port 1521对外开放了。你在客户端用tnsping显示OK,sqlplus 也可以连。

如果你的listener.ora 是
.......
   (ADDRESS = (PROTOCOL = TCP)(HOST = 你的网路IP)(PORT = 1521)) 
........
而/etc/hosts 是
127.0.0.1  localhost localhost.localdomain
这时tsnpign 显示OK, sqlplus 连不通。现在你应该知道如何纠正。 你也可以在 /etc/hosts中加
192.168.0.1   本机名  
192.168.0.1是我臆造的, 应该是你的本机网路IP。

如果你不用DNS,你应该在客户端的/etc/hosts里有
192.168.0.1   database机名。
在客户端的tnsnames.ora里有
tns-entry=
   .....
   (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT = 1521))

   (ADDRESS = (PROTOCOL = TCP)(HOST = database机名)(PORT = 1521))

个人见解,欢迎指正。

John
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP