怎样配置centos oracle网络参数
CentOS系统下Oracle网络参数配置指南
在CentOS系统上配置Oracle数据库网络,需完成系统网络基础配置、Oracle监听器设置、TNS连接配置及安全访问控制四大步骤,确保数据库能被本地或远程客户端正常访问。
一、系统网络基础配置(CentOS层面)
Oracle网络依赖稳定的系统网络环境,需先配置CentOS的网络接口、主机名及hosts文件。
1. 配置网络接口(静态IP推荐)
编辑网络配置文件(路径:/etc/sysconfig/network-scripts/ifcfg-<
网卡名>
,如ifcfg-ens33
),设置静态IP参数:
DEVICE=ens33
BOOTPROTO=static # 静态IP模式
IPADDR=192.168.1.100 # 数据库服务器IP
NETMASK=255.255.255.0 # 子网掩码
GATEWAY=192.168.1.1 # 网关地址
DNS1=8.8.8.8 # 首选DNS
DNS2=8.8.4.4 # 备用DNS
ONBOOT=yes # 开机自启
NM_CONTROLLED=no # 禁用NetworkManager控制(可选)
保存后重启网络服务:
sudo systemctl restart network
验证IP配置:
ip addr show ens33 # 查看网卡IP是否生效
ping 8.8.8.8 # 测试网络连通性
2. 关闭SELinux(避免权限拦截)
SELinux可能阻止Oracle监听端口或访问文件,需临时关闭并永久禁用:
# 临时关闭(立即生效)
sudo setenforce 0
# 永久关闭(修改配置文件)
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
3. 配置主机名与hosts文件
- 修改主机名(需与
tnsnames.ora
中的HOST
一致):sudo hostnamectl set-hostname orcl-server # 设置主机名为orcl-server
- 编辑hosts文件(路径:
/etc/hosts
),添加IP与主机名映射:192.168.1.100 orcl-server # 本地解析,避免DNS延迟
二、Oracle监听器配置(Listener)
监听器负责接收客户端连接请求,配置文件位于$ORACLE_HOME/network/admin/listener.ora
(需替换为实际Oracle安装路径)。
1. 编辑listener.ora文件
示例配置(根据实际情况修改HOST
、PORT
、SID
):
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-server)(PORT = 1521)) # 监听所有网卡的1521端口
#(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0)) # 可选:IPC协议(用于本地连接)
)
)
# 可选:指定SID列表(若需监听多个数据库实例)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl) # 数据库SID(需与数据库实例一致)
(ORACLE_HOME = /u01/app/oracle/product/19c/dbhome_1) # Oracle安装路径
)
)
2. 启动/重启监听器
# 切换至Oracle用户(需有Oracle安装权限)
sudo -u oracle
# 启动监听器
lsnrctl start
# 检查监听器状态(确认端口、SID是否正常)
lsnrctl status
若需开机自启,可将监听器加入系统服务(Oracle 19c及以上版本支持):
sudo systemctl enable oracle-listener
三、TNS连接配置(tnsnames.ora)
tnsnames.ora
用于定义数据库连接别名,方便客户端通过别名连接数据库,文件路径同listener.ora
。
1. 编辑tnsnames.ora文件
示例配置(ORCL
为自定义别名,需与客户端连接字符串一致):
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-server)(PORT = 1521)) # 监听器地址
(CONNECT_DATA =
(SERVER = DEDICATED) # 连接模式(专用服务器)
(SERVICE_NAME = orcl) # 数据库服务名(需与数据库注册的服务一致)
)
)
注:SERVICE_NAME
可通过lsnrctl status
命令查看(在“Services Summary”部分)。
2. 测试TNS连接
使用tnsping
工具验证配置是否正确:
tnsping ORCL # 测试别名解析与监听器连通性
若返回“OK”,说明TNS配置成功。
四、安全访问控制(防火墙)
默认情况下,CentOS防火墙(firewalld)会阻止1521端口的外部访问,需开放端口:
# 开放1521端口(永久生效)
sudo firewall-cmd --permanent --add-port=1521/tcp
# 重新加载防火墙规则
sudo firewall-cmd --reload
若需彻底关闭防火墙(仅测试环境使用):
sudo systemctl stop firewalld
sudo systemctl disable firewalld
五、验证数据库连接
使用sqlplus
工具测试本地/远程连接:
# 本地连接(无需TNS别名,直接用SID)
sqlplus sys/password as sysdba
# 远程连接(使用TNS别名)
sqlplus scott/tiger@ORCL
若能成功登录,说明Oracle网络配置完成。
注意事项:
- 确保
ORACLE_HOME
环境变量已正确设置(路径指向Oracle安装目录); - 若数据库实例未启动,需先启动数据库(
sqlplus / as sysdba
→startup
); - 生产环境中建议启用SSL加密(修改
listener.ora
中的PROTOCOL
为TCPS
),提升连接安全性。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 怎样配置centos oracle网络参数
本文地址: https://pptw.com/jishu/723510.html