温馨提示×

Ubuntu Oracle网络连接怎样设置

小樊
43
2025-12-16 18:37:32
栏目: 云计算

Ubuntu 连接 Oracle 数据库的网络设置

一 前置检查与网络连通性

  • 确认网卡名称与地址:ip addr show(常见为 eth0/ens/ens160 等)。
  • 测试基础网络:ping 8.8.8.8(连通性),ping www.baidu.com(DNS 解析)。
  • 如使用 Ubuntu 18.04+,优先通过 /etc/netplan/*.yaml 配置网络;老版本可用 /etc/network/interfaces
  • 云服务器需确保安全组/本机防火墙放行 Oracle 监听端口 1521/TCP

二 配置 Ubuntu 网络

  • Netplan(Ubuntu 18.04+,/etc/netplan/*.yaml,示例为 ens160
    • 编辑:sudo nano /etc/netplan/50-cloud-init.yaml
    • 示例(静态 IP):
      network:
      version: 2
      renderer: networkd
      ethernets:
      ens160:
      dhcp4: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers: { addresses: [8.8.8.8, 8.8.4.4] }
    • 应用:sudo netplan apply
  • 传统 ifupdown(/etc/network/interfaces,示例为 eth0
    • 编辑:sudo nano /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
  • 防火墙放行(UFW 示例):sudo ufw allow 1521/tcp;云上请在安全组放行 1521

三 安装 Oracle 客户端与环境变量

  • 安装 Instant Client(Basic 与 SQL*Plus 等)
    • 下载匹配架构的 Oracle Instant Client 压缩包,解压至 /opt/oracle/instantclient_XX_X
  • 配置环境变量(写入 ~/.bashrc 或 /etc/environment)
    • 建议:
      export ORACLE_HOME=/opt/oracle/instantclient_XX_X
      export LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH
      export PATH=$ORACLE_HOME:$PATH
      export TNS_ADMIN=$ORACLE_HOME/network/admin
    • 使生效:source ~/.bashrc(或 source /etc/environment)。

四 配置 Oracle 网络连接

  • 创建目录与 tnsnames.ora
    • 目录:mkdir -p $TNS_ADMIN
    • 编辑:$TNS_ADMIN/tnsnames.ora
  • 示例条目(按实际替换 HOST/PORT/SERVICE_NAME
    ORCL =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.103)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = orcl)
    )
    )
  • 说明:若仅直连,也可不依赖 tnsnames.ora,使用 EZConnect:sqlplus user/pass@//HOST:1521/SERVICE_NAME。

五 测试与排错

  • 基本连通性
    • 端口连通:nc -vz HOST 1521 或 telnet HOST 1521
    • 解析与路由:ping HOST;traceroute/tracert HOST
  • 客户端连接测试
    • 通过别名:sqlplus username/password@ORCL
    • 通过 EZConnect:sqlplus username/password@//HOST:1521/SERVICE_NAME
  • 常见故障
    • 防火墙/安全组未放行 1521;HOST 或 SERVICE_NAME 错误;监听未启动(服务器端);客户端库路径未设置(LD_LIBRARY_PATH);tnsnames.ora 路径不对(TNS_ADMIN)。

0