首页主机资讯如何配置Ubuntu Oracle的网络参数

如何配置Ubuntu Oracle的网络参数

时间2026-01-21 17:02:18发布访客分类主机资讯浏览1056
导读:Ubuntu 上配置 Oracle 网络参数的完整步骤 一 系统网络与防火墙准备 确认网卡与地址:使用命令查看网卡名与 IP,例如 ip addr show;确保数据库监听的 IP/主机名 可被解析与访问。 配置静态 IP(两种常见方式...

Ubuntu 上配置 Oracle 网络参数的完整步骤


一 系统网络与防火墙准备

  • 确认网卡与地址:使用命令查看网卡名与 IP,例如 ip addr show;确保数据库监听的 IP/主机名 可被解析与访问。
  • 配置静态 IP(两种常见方式,二选一):
    • 使用 Netplan(Ubuntu 18.04+ 常见):编辑 /etc/netplan/*.yaml,示例:
      eth0: dhcp4: no addresses: [192.168.1.100/24, 192.168.1.20/24] gateway4: 192.168.1.1 nameservers: { addresses: [8.8.8.8, 1.1.1.1] }
      应用:sudo netplan apply。
    • 使用 ifupdown(旧版或 Server 常见):编辑 /etc/network/interfaces,示例:
      auto eth0
      iface eth0 inet static
      address 192.168.1.100
      netmask 255.255.255.0
      gateway 192.168.1.1
      dns-nameservers 8.8.8.8 8.8.4.4
      应用:sudo systemctl restart networking。
  • 防火墙放行:Oracle 默认监听 TCP 1521,执行 sudo ufw allow 1521/tcp;如使用云服务器,还需在云平台安全组放行 1521
  • 连通性自检:ping 网关与 DNS;必要时检查 /etc/resolv.conf 的 nameserver 是否正确。

二 Oracle 网络配置文件与位置

  • 三个核心文件均位于 $ORACLE_HOME/network/admin(客户端可用 TNS_ADMIN 指定该目录):
    • listener.ora:服务器端监听配置,定义监听地址与端口(如 0.0.0.0:1521)。
    • tnsnames.ora:客户端命名解析,定义服务别名到 “主机/端口/服务名” 的映射。
    • sqlnet.ora:名称解析与认证策略,例如 NAMES.DIRECTORY_PATH 决定解析顺序(TNSNAMES、EZCONNECT 等),Linux 下建议不设置或设为 ALL 以兼容 OS 认证。
  • 典型要点:
    • 监听主机名建议用服务器的 可路由 IP 或 0.0.0.0,避免仅用 localhost 导致外部不可达。
    • 客户端可用 EZCONNECT 直连:sqlplus user/pass@host:1521/service_name

三 服务器端监听与数据库注册

  • 编辑监听:在 $ORACLE_HOME/network/admin/listener.ora 配置监听地址,例如:
    LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 0.0.0.0)(PORT = 1521)) ) )
  • 启动与验证监听:
    lsnrctl stop
    lsnrctl start
    lsnrctl status(应看到监听在 0.0.0.0:1521 且服务已注册)
  • 数据库动态注册:确保数据库参数 service_names 正确,实例启动后会自动向监听注册;如未出现,可手动注册:
    alter system register;
  • 静态注册(可选,适用于特殊场景):在 listener.ora 的 SID_LIST_LISTENER 中显式声明 SID_DESC。

四 客户端连接与命名解析

  • 方式 A(tnsnames.ora):在客户端创建或编辑 $ORACLE_HOME/network/admin/tnsnames.ora(或设置 TNS_ADMIN 指向该目录),示例:
    ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.100)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) )
    测试:sqlplus system/oracle@ORCL
  • 方式 B(EZCONNECT,免 tnsnames):确保 sqlnet.ora 包含 NAMES.DIRECTORY_PATH (…, EZCONNECT),然后直连:
    sqlplus system/oracle@192.168.1.100:1521/orcl
  • Instant Client 客户端要点:解压 Basic/SQL*Plus 包至如 /opt/oracle/instantclient_XX_X,设置环境变量:
    export LD_LIBRARY_PATH=/opt/oracle/instantclient_XX_X:$LD_LIBRARY_PATH
    export TNS_ADMIN=/opt/oracle/network/admin
    export PATH=/opt/oracle/instantclient_XX_X:$PATH
    之后可用 sqlplus 通过 EZCONNECT 或 tnsnames 连接。

五 常见问题快速排查

  • 监听未启动或仅本地可连:检查 listener.ora 的 HOST=0.0.0.0,执行 lsnrctl start/status;必要时 alter system register。
  • 客户端报找不到服务:核对 tnsnames.oraHOST/PORT/SERVICE_NAME;或用 EZCONNECT 直连验证网络与监听。
  • 无法 OS 认证(sqlplus / as sysdba):Linux 下 sqlnet.ora 不要设置 SQLNET.AUTHENTICATION_SERVICES=NTS,可设为 ALL 或不设。
  • 防火墙/安全组阻断:本地执行 sudo ufw status,云上放行 TCP 1521;从客户端 telnet host 1521 验证连通性。
  • 主机名解析失败:在 /etc/hosts 添加 “服务器IP 主机名” 映射,确保客户端能解析服务器名。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何配置Ubuntu Oracle的网络参数
本文地址: https://pptw.com/jishu/788852.html
如何确保Ubuntu Oracle的数据安全性 SecureCRT在Debian上的键盘快捷键设置

游客 回复需填写必要信息