首页 > 代码库 > Oracle 使用本地IP地址连接异常的解决方法

Oracle 使用本地IP地址连接异常的解决方法

前几天的安装的Oracle测试环境,今天发现不能使用本地IP连接,连接提示错误

Oracle the network adapter could not establish the connection

这个问题折腾我时间比较长,网上很多资料都不太适合我的情况。不过最后还是被找到了 花了很多时间在其他方面没有锁定问题根源.


1 开始以为是防火墙 server client端都排除

2 oracle client端问题 (ubuntu 安装的client端)

3 最后用程序测试发现还是报Network adapter问题 最终锁定肯定是数据库server端问题 继续搜索发现问题.

------------------------------------------------------------------------------------------------------------


1.确定oracle Listener 监听服务已经启动。
2.如果你的oracle数据库不是安装在本机那么请把oracle所在主机防火墙给关掉(哪怕你的防火墙开放1521端口,因为当有一个连接请求 1521端口时oracle会随机分配另一个端口给它.这是个人见解!望高手指点)
3.确定你连接的IP地址正确。

如果以上问题你都核实过那么请继续往下看。


开始我是用eclipse database development 配置时发现了此问题.

oracle1

后来用 Oracle SQL Developer同样也无法连接.后来试了试sqlplus却可以连接.

oracle2


于是我再sqlplus试了一下192.168.1.2这个地址(同样是本机)却给出了这样的答案。
第一次无监听程序,提示再输入用户名 却又连接上了。(看来第二次是跟你输入sqlplus一样的)

images3

这个答案很明确了当你直接输入sqlplus可以登录,但是你把本机的IP给加上却不能登录。

纳闷了几小时忽然想起以前在玩oracle的时候(没学之前^_^)在哪看见可以配置监听的,就是忘记哪在了。于是又花了半个小时终于找到了

原来是Net Manager,(看来没事玩玩软件比玩玩游戏受益多啊)

images

启动Net Manager 选择LISTENER 现在可以看见监听的地址1原来是localhost不是192.168.1.2(本机)奇怪喽localhost不就是192.168.1.2(我的本机IP)吗?



于是尝试了一下192.168.1.2
用添加地址的按钮增加了一个192.168.1.2
保存退出重启oracle Listener 监听服务稍等片刻。

images6




哈哈居然连接上。看来localhost 不等于192.168.1.2 (localhost是没有经过网卡的监听,嘿嘿个人意见,我不懂网络,纯属联想。)

再试试 Oracle SQL Developer 同样也OK。




无意间看着dos命令发现了这个

images7

以上有3个监听端点(这是增加了192.168.1.2IP)第一个是127.0.0.1第二是IPC协议xxxx(不懂)第三个就是增加的192.168.1.2。

以下图片是增加192.168.1.2之前的



只有两个监听端点

提示:重启服务可以用命令也可以用windows的服务管理。

命令如下

监听启动: lsnrctl start
监听停止: lsnrctl stop
或者就输入:lsnrctl 再输入start 或者 stop

启动Oracle: net start OracleServiceORACLE(ORACLE 我的SID)
停止Oracle: net stop OracleServiceORACLE

原文连接:http://www.cnblogs.com/adolfmc/archive/2012/10/07/2713711.html