超级难题:weblogic连接防火墙内部的oracle数据库出错! http://expert.csdn.net/Expert/topic/953/953699.xml?temp=.8665888防火墙设置中应把1521端口放开。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 仅仅开放1521端口还不行吧.用到了很多其它端口可以通过netstst查询到-------------------连接请求是1521,但实际连接的端口是动态分配的 监听器默认端口是1521,但它会发生重定向。 首先要确保ping是好的。然后就是端口需要在防火墙上放开,如果一个端口不行,就多开几个。linux不知道是否已经有了那个环境变量(unix)上是安装了oracle就会有的。服务器上的配置没有问题吗?你可以把问题一个个的排除,加上跟踪,查看跟踪信息来帮助分析问题。 我曾经遇到防火墙,开1521是不可以的,后来通过nt下的netstat查看端口连接情况,发现不仅仅是1521,后来我猜想连接请求是1521,但实际连接的端口是动态分配的。而且防火墙网管说从我服务器上连接的端口也不仅仅是1521。 默认端口是1521,但实际上会是4000之类的端口号。但如何你只开放1521,且把USE_SHARED_SOCKED设置为true,连接正常。 这个跟软件好象没有多大关系,搞网络管理的硬件人员好象都会。我没作过oracle的,作过sql server的,原理应该一样的。 搞网络硬件的都会?那配置orcle连接的人都不用知道任何oracle的知识了!配置连接的时候,只能说保证网络连通性是首要问题。 楼上的朋友,不管你相信不相信,我在一个单位做实施时,我们的程序没有做任何修改,他们网络处的人在防火墙给我们新开了一个1433端口,weblogic连接防火墙内部的sql server数据库就成功了。 咳咳,hlhtyql(南方人),对你没有什么可说的了,希望你能多了解一些oracle的东西再到这里发表高见. oracle重定向端口是随机分配的 我对oracle是不熟悉,倒很想看看 jiezhi(西域浪子) 的高招,这样我也可以去客户那里实施。当务之急是catalog (袄法)需要解决问题,否则这个项目还如何实施?我也盼望其他高手赐教,权当是一次学习的机会。 http://expert.csdn.net/Expert/topic/953/953699.xml?temp=.8665888这个上面是我做成功的一个例子,可以参考的。 http://expert.csdn.net/Expert/topic/953/953699.xml?temp=.8665888死链接,怎么看? client-----firewall------server 平台都是win2k server+oracle8.1.6 firewall 是checkpoint的; client---server ping ok,tnsping ok,但就是连接不上:tns超时, 且无论怎么设置超时的时间,它都是大概经过15秒后出现该错误提示。 但如果不通过防火墙,连接正常。 需要强调的是:防火墙是放开的,同时,另一unix服务器,也是oracle8.1.6,客户端通过防火墙却能正常连接。 解决办法: 在win2k的系统变量中添加变量:TNS_ADMIN,它的值设置为: d:\oracle\oracle8i\network\admin 也就是存放listener.ora等文件的路径; 在注册表中添加字串值:TNS_ADMIN 它的值同上; 再添加字串值:USE_SHARED_SOCKED,值设置为TRUE,重新启动计算机. 偶是linux系统to 南方人:你说的没错,sql server是没问题,但是oracle就不行:sql plus连接它很正常,但是weblogic就是不行 oracle的连接是通过客户端的service启动oracle的连接主键,通过默认端口1521由tcp/ip向服务器提出请求,服务器的连接主键向服务器提出连接请求,服务器的监听程序检测到该请求,将连接信息反馈给oracle服务器的连接主键,再反馈给oracle客户端的连接主键,这样就建立服务器与客户端连接会话。(个人理解)oracle是通过进程管理的,sql server是线程的,所以jiezhi(西域浪子)说的没错。默认端口是1521,但实际上会是4000之类的端口号。但如何你只开放1521,且把USE_SHARED_SOCKED设置为true,连接正常。南方人说的sql server也没错,不过要注意Sql server跟Oracle是完全不同的。 补充:要方位防火墙后面的一个Oracle数据库,需要满足一下准则:1、除非网络管理员已为远程主机设置了一个别名,否则Tnsnames.ora文件必须完全指定这个主机。2、必须恰当配置基本网络。服务器必须能够相互Ping,防火墙必须允许这种通信量形式,远程监听器必须正在运行和可用。3、必须知道远程站点的监听器端口号,把这个端口号存放再Tnsnames.ora文件中。比如指定为fld.com位置上的机器名Server1,Host文件的条目可能是:server1.fld.com在FLD1实例的Tnsnames.ora文件中,Service的配置条目如下:fld1 = (Description = (Address_list = (Address = (Protocol = Tcp) (Host = server1.fld.com)(Port = 1521) ) (Connect_data = (Sid = fld1)))如果服务器名、端口号或实例名发生变化,必须确保客户端站点和远程站点之间保持一致。 关于Mysql encode加密函数的问题 oralce基础instr函数用法求解 oracle 11g有人使用吗? oracle中定额的概念什么意思? Oracle服务端安装问题 请教一个SQL语句:查询相近记录的。 请问,数据库客户端和服务器端有什么不同 安装ORACLE过程有什么特殊的地方? 资料档案库的问题 遇到这种情况是否要删除视图后重建,能不能通过修改视图实现? oracle 里存储图片信息,如何处理? 菜鸟求救!!!!!!!!!!!
用到了很多其它端口
可以通过netstst查询到
-------------------
连接请求是1521,但实际连接的端口是动态分配的
首先要确保ping是好的。然后就是端口需要在防火墙上放开,如果一个端口不行,就多开几个。linux不知道是否已经有了那个环境变量(unix)上是安装了oracle就会有的。服务器上的配置没有问题吗?你可以把问题一个个的排除,加上跟踪,查看跟踪信息来帮助分析问题。
而且防火墙网管说从我服务器上连接的端口也不仅仅是1521。
这个上面是我做成功的一个例子,可以参考的。
平台都是win2k server+oracle8.1.6
firewall 是checkpoint的;
client---server ping ok,tnsping ok,但就是连接不上:tns超时,
且无论怎么设置超时的时间,它都是大概经过15秒后出现该错误提示。
但如果不通过防火墙,连接正常。
需要强调的是:防火墙是放开的,同时,另一unix服务器,也是oracle8.1.6,客户端通过防火墙却能正常连接。
解决办法:
在win2k的系统变量中添加变量:TNS_ADMIN,它的值设置为:
d:\oracle\oracle8i\network\admin 也就是存放listener.ora等文件的路径;
在注册表中添加字串值:TNS_ADMIN 它的值同上;
再添加字串值:USE_SHARED_SOCKED,值设置为TRUE,重新启动计算机.
oracle是通过进程管理的,sql server是线程的,所以jiezhi(西域浪子)说的没错。
默认端口是1521,但实际上会是4000之类的端口号。但如何你只开放1521,且把USE_SHARED_SOCKED设置为true,连接正常。南方人说的sql server也没错,不过要注意Sql server跟Oracle是完全不同的。
要方位防火墙后面的一个Oracle数据库,需要满足一下准则:
1、除非网络管理员已为远程主机设置了一个别名,否则Tnsnames.ora文件必须完全指定这个主机。
2、必须恰当配置基本网络。服务器必须能够相互Ping,防火墙必须允许这种通信量形式,远程监听器必须正在运行和可用。
3、必须知道远程站点的监听器端口号,把这个端口号存放再Tnsnames.ora文件中。比如指定为fld.com位置上的机器名Server1,Host文件的条目可能是:
server1.fld.com
在FLD1实例的Tnsnames.ora文件中,Service的配置条目如下:
fld1 =
(Description =
(Address_list =
(Address = (Protocol = Tcp)
(Host = server1.fld.com)(Port = 1521)
)
(Connect_data = (Sid = fld1))
)
如果服务器名、端口号或实例名发生变化,必须确保客户端站点和远程站点之间保持一致。