【离线安装】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