- 首页 >
- 问答 >
-
云计算 >
- 如何配置Ubuntu Oracle网络连接
如何配置Ubuntu Oracle网络连接
小樊
41
2025-11-29 01:18:37
Ubuntu连接Oracle的网络配置步骤
一 环境准备与网络连通性
- 安装 Oracle Instant Client(Basic 与 SQL*Plus),解压至如 /opt/oracle/instantclient_XX_X,并设置环境变量(示例):
- 编辑 ~/.bashrc 或 /etc/environment,加入:
- export ORACLE_HOME=/opt/oracle/instantclient_XX_X
- export LD_LIBRARY_PATH=$ORACLE_HOME
- export TNS_ADMIN=$ORACLE_HOME/network/admin
- export PATH=$ORACLE_HOME:$PATH
- 使配置生效:source ~/.bashrc 或 source /etc/environment
- 确认网络连通与监听可达:
- 查看网卡与地址:ip addr
- 测试外网:ping 8.8.8.8;测试域名:ping www.baidu.com
- 测试数据库端口(默认 1521):nc -vz <数据库主机IP或域名> 1521
- 如通过 SSH 隧道访问,先建立本地端口转发(例如本地 11521 转发至远端 1521),后续用本地端口连接。
二 配置Oracle客户端网络文件
- 设置 TNS_ADMIN 指向你的网络配置目录(如 $ORACLE_HOME/network/admin),在该目录创建或编辑 tnsnames.ora:
- ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <数据库主机或IP>)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = <你的服务名,如 orcl>)
)
)
- 说明:
- 若使用 EZConnect,可直接用 sqlplus user/password@//:/ 测试,无需 tnsnames.ora。
- 若采用 TNS 别名方式,请确保 TNS_ADMIN 指向包含 tnsnames.ora 的目录,并使用 sqlplus user/password@ORCL 测试。
三 Ubuntu系统网络配置
- Ubuntu 18.04 及以上默认使用 Netplan。编辑 /etc/netplan/*.yaml(如 50-cloud-init.yaml 或 01-netcfg.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:
- 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
- 完成后再次验证外网与数据库端口连通性。
四 连接测试与常见问题
- 连接测试:
- 使用 EZConnect:sqlplus user/password@//:/
- 使用 TNS 别名:sqlplus user/password@ORCL
- 本机装有数据库时,可用:sqlplus / as sysdba
- 常见问题与排查要点:
- 防火墙/安全组未放行 1521(或隧道端口),在服务器与云安全组放通对应端口。
- 监听未启动或 SERVICE_NAME/SID 不匹配,请在数据库侧确认监听状态与 service_name。
- 客户端找不到库或配置,检查 LD_LIBRARY_PATH、TNS_ADMIN 与 tnsnames.ora 路径及内容。
- 接口名不一致(如 eth0/ens160/enp0s3),以 ip addr 输出为准,修改 Netplan/ifupdown 配置时使用实际接口名。