远程连接Oracle,修改listener.ora

时间:2024-03-20 18:24:01

我们知道,Oracle在安装完毕后,默认的listener.ora,tnsnames.ora中配置的Host为localhost;

当服务器安装了Oracle,我们本地客户端需要远程连接到服务器的Oracle,发现无法连接,提示错误;

按照以下步骤进行处理:

1) 服务器,打开cmd,输入hostname回车,获得服务器的机器名(当然此处获取服务器的IP地址也可)

2) 服务器,替换oracle目录下的listener.ora,tnsnames.ora,把localhost替换为1)获取的结果;

给出一个listener.ora示例:

远程连接Oracle,修改listener.ora

同理,tnsnames.ora中出现的localhost一并替换;

3) 服务器,listener.ora文件在SID_LIST_LISTENER段落中增加一段,效果如下图所示:

#假设Oracle安装在E盘,服务名为ORCL,修改之前的配置
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = E:\app\Val\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Val\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
 )
#假设Oracle安装在E盘,服务名为ORCL,修改之后的配置
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = E:\app\Val\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:E:\app\Val\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
    (SID_DESC =
      (GLOBAL_DBNAME = ORCL)
      (ORACLE_HOME = E:\app\Val\product\11.2.0\dbhome_1)
      (SID_NAME = ORCL)
    )  
 )

4) 服务器,重启Oracle监听服务;

5) Window为服务器版本的,比如2008 R2,需要新建入站/出站规则,端口为Oracle的服务端口,默认为1521;