详细讲解Oracle数据库9i穿过防火墙问题

发表于:2008-10-10来源:作者:点击数: 标签:数据库oracleOracleORACLE讲解
关键字:讲解 Oracle 9i 穿过防火墙 环境:win2000, oracle 9.2.0.1 方法一: 在windows2000的注册表中,hkey_local_machinesoftwareoraclehome0下加入字符串值: USE_SHARED_SOCKET=TRUE,即可 方法二: 1、首先将数据库实例改为SHARED SERVER模式 2、以SYS
关键字:讲解 Oracle 9i 穿过防火墙

  环境:win2000,oracle 9.2.0.1

 

  方法一:

 

  在windows2000的注册表中,hkey_local_machinesoftwareoraclehome0下加入字符串值:

 

  USE_SHARED_SOCKET=TRUE,即可

 

  方法二:

 

  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)

原文转自:http://www.ltesting.net