【离线安装】CentOS Linux 7 上离线部署Oracle 19c(已成功安装2次)

1.部署参考链接:

CentOS 7 rpm方式离线安装 Oracle 19chttps://blog.csdn.net/Vampire_1122/article/details/123038137?fromshare=blogdetail&sharetype=blogdetail&sharerId=123038137&sharerefer=PC&sharesource=weixin_45806267&sharefrom=from_link

2.获取对应的安装包并上传到对应路径

3.安装过程(所有命令建议按顺序执行)

=============================================

#CentOS Linux 7 上离线部署Oracle 19c 2025-08-21

0.前置说明:

把 Oracle 19c RPM 安装包和依赖库(libs)上传到 /opt 目录下

目录结构示例:

/opt/libs --> 存放 Oracle 所需依赖 rpm 包

/opt/19c-rpm --> 存放 Oracle 19c 数据库安装 RPM 包

=============================================

#1.临时关闭防火墙

systemctl stop firewalld

2.临时禁用 SELinux

SELINUX=disabled

#3.安装依赖库

cd /opt/libs

rpm -Uvh *.rpm --nodeps --force

#4.安装 Oracle 19c

cd /opt/19c-rpm

rpm -ivh compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm # 兼容库

rpm -ivh oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm # 预安装包

rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm # 数据库 RPM

#5.配置主机 IP

echo "192.168.1.100" >> /etc/hosts

#6.配置数据库实例

vim /etc/init.d/oracledb_ORCLCDB-19c configure

export CREATE_AS_CDB=false

这个地方改为false,这是问你要不要创建容器化数据库,如果是true以后创建的用户好像是都要加c##所有我就设为false了然后保存退出

/etc/init.d/oracledb_ORCLCDB-19c configure

#7.切换 oracle 用户

su oracle

#8.登录数据库

sqlplus / as sysdba

#9.设置环境变量

vim ~/.bash_profile

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1

export ORACLE_SID=ORCLCDB

export PATH=ORACLE_HOME/bin:PATH:HOME/.local/bin:HOME/bin

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

source ~/.bash_profile

#10.修改 sys 密码

ALTER USER sys IDENTIFIED BY "ynmes@123";

#11.配置防火墙,开放 1521 端口

systemctl start firewalld

firewall-cmd --zone=public --add-port=1521/tcp --permanent

firewall-cmd --reload

ss -tuln | grep 1521

如果看到类似 LISTEN 0 100 0.0.0.0:1521 ...,说明端口监听成功

#12.以下配置开机自启动!!!!

在root用户下,使用systemd 来进行 oracle数据库的启动和关闭操作. 使用的脚本为 lsnrctl和dbstart

#12.1修改启动配置

vi /etc/oratab

#将里面 最后一句话设置从N 修改为Y 允许启动

ORA19C:/opt/oracle/product/19c/dbhome_1:Y

#12.2设置数据库的启动命令

vi /usr/bin/oracle.sh

增加的内容为:

#!/bin/bash

script For oracle19c.service

/opt/oracle/product/19c/dbhome_1/bin/lsnrctl start

/opt/oracle/product/19c/dbhome_1/bin/dbstart /opt/oracle/product/19c/dbhome_1

chmod 775 /usr/bin/oracle.sh

#12.3设置 oracle19c.service

vim /etc/systemd/system/oracle19c.service

Unit

Description=Oracle19c

After=syslog.target network.target

Service

LimitMEMLOCK=infinity

LimitNOFILE=65535

Type=oneshot

RemainAfterExit=yes

User=oracle

Environment="ORACLE_HOME=/opt/oracle/product/19c/dbhome_1"

ExecStart=/usr/bin/oracle.sh

Install

WantedBy=multi-user.target

#12.4设置开机自动启动

systemctl enable oracle19c

#12.5重启生效

reboot

#12.6查看是否成功

#查看是否开机自启

systemctl list-unit-files | grep oracle19c

#查看Oracle状态

systemctl status oracle19c

4.远程连接验证