Oracle修改监听IP地址

本文介绍了解决 Oracle 11g 在断网环境下安装后其他主机无法连接的问题。通过修改 hosts 文件、listener.ora 和 tnsnames.ora 文件中的主机名,实现了正确配置监听器和服务名,从而使其他主机能够成功连接。

oracle 11g断网安装时,没有检测net的功能,所以安装完后,netstat -an 发现自动监听的是127.0.0.1:1521,这样安装完成后,其他的主机根本无法连接,是什么原因呢?

 

排错后发现,是主机名的问题:

1 在cmd中,输入hostname 发现主机名

2 在文件夹:c:\windows\system32\drivers\etc  修改hosts文件:

源文件为:

 

复制代码
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
#    127.0.0.1       localhost
#    ::1             localhost
....此处添加 主机IP       主机名
复制代码

 

 

 

在最后一行加入

本机IP    主机名

保存即可

使用lsnrctl stat查看监听状态
此时监听的还是 127.0.0.1:1521这个IP
 
 
修改监听文件 listener.ora 文件在 D:\app\Administrator\product\11.2.0\dbhome_1\network\admin 目录下,注释部分的主机名原为Localhost
复制代码
# listener.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
 
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\app\Administrator\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:D:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )
 
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-ASA0GB1AV61)(PORT = 1521))//WIN-ASA0GB1AV61原为localhost
) ) ADR_BASE_LISTENER = D:\app\Administrator
复制代码

 

把其中的localhost换成自己的主机名
 
再修改主机名文件 tnsnames.ora
 
复制代码
# tnsnames.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
 
LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-ASA0GB1AV61)(PORT = 1521))//WIN..原为localhost
 
 
ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )
 
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-ASA0GB1AV61)(PORT = 1521))//WIN..原为localhost
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
复制代码

 

同样把localhost换成自己的主机名
再用lsnrctl.ora检测,发现监听IP地址变为:192.168.1.251:1521 0.0.0.0 (192.168.1.251为本主机IP)
 
成功!
### 修改 Oracle 数据库监听器的 IP 配置 要修改 Oracle 数据库监听器的 IP 地址配置,需遵循以下方法: #### 1. 查看当前监听状态 通过 `lsnrctl` 工具查看当前监听的状态以及绑定的 IP 和端口信息: ```bash lsnrctl status ``` 此命令会显示监听器正在使用的主机名和 IP 地址。 --- #### 2. 停止监听服务 在修改配置前,需要先停止监听器以防止冲突: ```bash lsnrctl stop ``` --- #### 3. 编辑 Listener 配置文件 进入 Oracle 安装目录下的网络配置路径 `$ORACLE_HOME/network/admin/` 并打开 `listener.ora` 文件。 使用文本编辑工具(如 `vi` 或其他)定位到监听器条目的 `(HOST)` 参数,并将其值更改为新的 IP 地址[^1]。 以下是典型的 `listener.ora` 文件结构示例: ```plaintext LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 新IP地址)(PORT = 1521)) ) ) ``` 将其中的 `HOST` 字段替换为目标 IP 地址。 --- #### 4. 更新 TNSNAMES 配置(可选) 如果客户端连接也需要更新,则应同步修改 `tnsnames.ora` 文件中的对应条目。同样,在 `$ORACLE_HOME/network/admin/` 路径下找到该文件并调整如下字段: ```plaintext (DESCRIPTION= (ADDRESS=(PROTOCOL=TCP)(HOST=新IP地址)(PORT=1521)) (CONNECT_DATA= (SERVICE_NAME=数据库服务名) ) ) ``` 注意:此项仅当客户端依赖于静态连接字符串时才必要[^2]。 --- #### 5. 检查操作系统级 Hosts 文件 确保操作系统的 `/etc/hosts` (Linux/MacOS)或 `%SystemRoot%\system32\drivers\etc\hosts` (Windows)中定义的新旧映射关系已被正确更新。例如: ```plaintext 新IP地址 主机名 ``` --- #### 6. 启动监听器 完成上述更改后重新启动监听器使设置生效: ```bash lsnrctl start ``` 验证监听是否正常运行: ```bash lsnrctl status ``` --- #### 7. 测试连接 最后一步是确认客户端能够顺利访问数据库实例。可以通过以下方式测试: - 使用 `tnsping` 工具检查连通性; - 登录至目标数据库验证功能可用性。 --- ### 注意事项 - **备份重要文件**:在修改任何配置之前建议复制原始版本作为备用。 - **权限管理**:确保拥有对相关文件夹及文档写入的权利。 - **一致性校验**:保证所有涉及的地方都统一指向最新的 IP 设置[^3][^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值