`

Oracle 开放端口(通过端口映射无法连接)

 
阅读更多
转自:http://hi.baidu.com/suofang/item/cbcc40f5e038d1df6325d211

        Oracle 9I 安装在Win2003上,WIN2003只开放端口1521端口,则远程telnet 1521端口能通,但是数据库连接不上。原因如下:
        Oracle客户端连接服务器,首先去找1521监听端口,服务器的1521监听端口再向server process进程发出请求,并返回一个随机端口,返回给客户端,客户端再来连接这个端口。
        Matalink上提供了三种解决办法,实际上USE_SHARED_SOCKET 是最有效最方便的。

方法一:
在windows2003的注册表中,hkey_local_machine\software\oracle\home0\下加入字符串值:
USE_SHARED_SOCKET=TRUE,在服务器上开启TCP“1521”端口,重启ORCALE服务器即可!

方法二:
1、首先将数据库实例改为SHARED SERVER模式
2、以SYSDBA登录SQLPLUS,通过SQLPLUS生成系统当前的参数设置文件pfile:create pfile='d:\init.ora' from spfile;
3、修改d:\init.ora文件,在其中增加(用editplus编辑):*.service_names='your service name'和*.dispatchers='(address=(protocol=tcp)(host=localhost)(port=1521)(dispatchers=1)'
4、生成新的SPFILE:create spfile from pfile='d:\init.ora';
5、重启动数据库。
6、在防火墙中开放1521端口。

方法三:
在数据库端(也可以是另外的机器,但是cman的机器必须和数据库都在防火墙的后面)安装了cman的前提下,启动cman,然后开放防火墙端的1630端口(看cman开的是什么端口啦),最后在客户端的tnsnames.ora文件中添加:
cmantest = (description = (address_list = (address = <- first address is to CMAN (protocol=tcp) (host=hostname or ip of cman) (port=1610) ) (address= <- second address is to Listener (protocol=tcp) (host=hostname or ip of listener) (port=1521) ) ) (connect_data = (sid = sidname)) (source_route = yes)

另:
安装完Windows版的Oracle 10G 后,开启了windows 2003自带的防火墙,发现在本机可以访问oracle数据库,但在远程不能连接,一直都在报连接超时。关闭防火墙后,可以用远程连接Oracle 10G 数据库。但开启防火墙后,又不能连接,说明问题出在防火墙上,防火墙开启TCP 1521端口,仍然不能连接数据库。解决问题的办法如下:
1.如果是Oracle 8i ,修改注册表HKLM\Software\Oracle,增加一个字符串值USE_SHARED_SOCKET = TRUE。
2.如果是非Oracle 9i,打开%Oracle_Home%\bin\oracle.key文件,按里面的路径HKLM增加一个字符串值USE_SHARED_SOCKET = TRUE。
3.增加以后重启机子让注册表生效。

如果是Linux下的Oracle,只要在防火墙中打开TCP 1521端口就可以连接了。
分享到:
评论

相关推荐

    在防火墙上开放Oracle服务端口的方法

     我们有的时候需要映射端口远程去访问Oracle数据库,这里有个防火墙的问题,在unix上没有问题,但是在win 平台上却无法正确访问,下面的可以解决这个问题,:  近来由于工作需要,在Windows XP平台上安装了...

    nat123动态域名解析P2P全端口映射 v1.151123.zip

    at123是集合80端口映射、动态域名解析、域名解析管理的开放自由的平台,可轻松管理域名解析、发布网站、访问内网应用,支持任何网络。 nat123动态域名解析P2P全端口映射软件功能特色: 支持开机运行,自动登录,...

    nat123全端口映射P2P域名解析 v1.140826.zip

    nat123是集合80端口映射、动态域名解析、域名解析管理的开放自由的平台,可轻松管理域名解析、发布网站、访问内网应用,支持任何网络。 软件功能特色: 支持开机运行,自动登录,精简模式登录,代理上网,后台服务...

    JAVA上百实例源码以及开源项目

     还包括消息客户端程序,通过连接创建会话。创建发送者和映射消息。发送消息,同时对文本进行少量修改,发送end-of-messages消息,最后关闭连接。 Tcp服务端与客户端的JAVA实例源代码 2个目标文件 摘要:Java源码,...

    JAVA上百实例源码以及开源项目源代码

    同时一个mail note将被发送给消息发送者,发送一个e-mail通知给由recipient参数确定的e-mail账号,查询mail 服务器的会话…… 还包括消息客户端程序,通过连接创建会话。创建发送者和映射消息。发送消息,同时对文本...

    超级有影响力霸气的Java面试题大全文档

    与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。...

    java 面试题 总结

    与cgi的区别在于servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。...

    iWeb Office2000[C#版]

    2、将iWebOffice文件目录在IIS中映射成一个虚拟目录iWebOffice,请注意global.asa文件 能够在虚拟目录下运行,而不能在普通目录下运行 3、请用RegSvr32 盘符:iWebOfficeiMsgServer2000.dll命令注册iMsgServer2000....

    iWeb Office2000[.NET版]

    2、将iWebOffice文件目录在IIS中映射成一个虚拟目录iWebOffice,请注意global.asa文件 能够在虚拟目录下运行,而不能在普通目录下运行 3、请用RegSvr32 盘符:iWebOfficeiMsgServer2000.dll命令注册iMsgServer2000....

    iWeb Office2000[EXE版]

    2、将iWebOffice文件目录在IIS中映射成一个虚拟目录iWebOffice,请注意global.asa文件 能够在虚拟目录下运行,而不能在普通目录下运行 3、请用RegSvr32 盘符:iWebOfficeiMsgServer2000.dll命令注册iMsgServer2000....

    iWeb Office2000[OCX版]

    2、将iWebOffice文件目录在IIS中映射成一个虚拟目录iWebOffice,请注意global.asa文件 能够在虚拟目录下运行,而不能在普通目录下运行 3、请用RegSvr32 盘符:iWebOfficeiMsgServer2000.dll命令注册iMsgServer2000....

    iWeb Office2000[ASP版]

    2、将iWebOffice文件目录在IIS中映射成一个虚拟目录iWebOffice,请注意global.asa文件 能够在虚拟目录下运行,而不能在普通目录下运行 3、请用RegSvr32 盘符:iWebOfficeiMsgServer2000.dll命令注册iMsgServer2000....

Global site tag (gtag.js) - Google Analytics