大家好,我是 JiekeXu,江湖人称“强哥”,青学会 MOP 技术社区主席,荣获 Oracle ACE Pro 称号,墨天轮 MVP,墨天轮年度“墨力之星”,拥有 Oracle OCP/OCM 认证,MySQL 5.7/8.0 OCP 认证以及 PCA、PCTA、OBCA、OGCA、KCA、KCP、KCSM 等众多国产数据库认证证书,今天和大家一起看看 你知道 Linux 9 能安装 Oracle 19c 吗?欢迎关注我的微信公众号“JiekeXu DBA之路”,然后点击右上方三个点“设为星标”置顶,更多干货文章才能第一时间推送,谢谢!

前 言
近几日,因为一套核心库要迁移至新机房,通过搭建 dataguard 的方式迁移,但需要新搭建一套 RAC,但采购的硬件设备不支持 RHEL7.9,仅支持 RHEL8.5 以后的操作系统,那么故打算在 RHEL9 上安装 Oracle 19c RAC,这里先查找一些支持的 RHEL9 的证据。
正 文
Oracle 19c 在 Linux 9 上是受支持的,官方文档安装列表里写了 RHEL7,8,9 Oracle Linux 7,8,9 均支持,但也没说数据库 RU 版本是多少,我们知道 arm 版本是 19.19 才开始支持,从官网下载的安装包也直接就是 19.19,那么 x64 的Linux 9 安装 Oracle 19c 支持不支持呢?因为官网的安装包就只是 19.3 的基础包,可能需要验证一下。

经过查证,Linux 9 是可以安装的,但必须运行在 UEK7(Unbreakable Enterprise Kernel) 且数据库补丁版本为 19.19 或更高。下图是官方 MOS 界面提供的认证列表,明确要求最小化 RU 为 19.19。
Linux 9 支持 Oracle GI 的部署

Linux 9 支持 Oracle db 的部署,但需要最小化补丁 RU19

Linux 8 支持 Oracle RAC 的部署

内核要求
带有 Unbreakable Enterprise Kernel 7 的 Oracle Linux 9:5.15.0-1.43.4.2.el9uek.x86_64 或更高版本
带有 Red Hat 兼容内核的 Oracle Linux 9:5.14.0-70.22.1.0.2.el9_0.x86_64 或更高版本
Red Hat Enterprise Linux 9:5.14.0-70.22.1.0.2.el9_0.x86_64 或更高版本
最低硬件要求
a. 确保您的系统满足以下物理内存要求:
最低:1 GB RAM
推荐:2 GB RAM 或更多
注意:相对于 RAM 的交换空间分配
| RAM 内存 | Swap 交换空间 |
|---|---|
| 介于 1 GB 和 2 GB 之间 | RAM 大小的 1.5 倍 |
| 介于 2 GB 和 16 GB 之间 | 等于 RAM 的大小 |
| 大于 16 GB | 16 GB |
注意:上述建议(来自适用于 Linux 的 Oracle 数据库安装指南 19c)是最低限度的安装建议。可能需要更多的 RAM 和交换空间来调整/提高 RDBMS 性能。
c. /tmp 目录 1.0 GB(1024MB) 磁盘空间(磁盘空间小于 2TB)。
d. 如果 /tmp 目录中的可用空间小于所需空间,请完成以下步骤之一:
- 从 /tmp 目录中删除不必要的文件以满足磁盘空间要求。
- 在设置 oracle 用户的环境时,设置 TMP 和 TMPDIR 环境变量。
e. 大约 7.2 GB 的本地磁盘空间用于数据库软件文件。
f.如果您打算在安装过程中创建预配置的数据库,则您选择的文件系统(或文件系统)必须至少具有 2 GB 的可用磁盘空间。
对于生产数据库,您必须根据数据库的使用情况估计磁盘空间需求。
rpm 包要求
从 19c 开始,Oracle 官方开发部门决定不再记录 rpm 软件包具体的版本,只需提供经认证的最低指定操作系统版本+服务包(即 OL 9 或 RHEL 9)的 RPM 版本即可。不过,用户可以自行将 RPM 升级到最新版本。
数据库预装 RPM 下载链接(外部和内部存储库)
https://public-yum.oracle.com/repo/OracleLinux/OL9/appstream/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el9.x86_64.rpm
--可以使用以下命令下载 oracle-database-preinstall-19c RPM(无需提供版本号)
# dnf update -y
--或者 wget https://public-yum.oracle.com/repo/OracleLinux/OL9/appstream/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el9.x86_64.rpm
# dnf install oracle-database-preinstall-19c -y
--查看日志 /var/log/oracle-database-preinstall-19c/backup/timestamp/orakernel.log
--Packages for Red Hat Enterprise Linux 9
bc
binutils
compat-openssl11
elfutils-libelf
fontconfig
glibc
glibc-devel
ksh
libaio
libasan
liblsan
libX11
libXau
libXi
libXrender
libXtst
libxcrypt-compat
libgcc
libibverbs
libnsl
librdmacm
libstdc++
libxcb
libvirt-libs
make
policycoreutils
policycoreutils-python-utils
smartmontools
sysstat
Note - For 64-Bit Oracle Database Client Installs,below Packages are required
libnsl2
libnsl2-devel
Oracle Database Preinstallation RPM 将执行以下作:
- 自动下载并安装安装 Oracle Grid Infrastructure 和 Oracle Database 所需的任何其他 RPM 软件包,并解决任何依赖关系
- 创建一个 Oracle 用户,并为该用户创建 oraInventory (oinstall) 和 OSDBA (dba) 组
- 根据需要,将 sysctl.conf 设置、系统启动参数和驱动程序参数设置为基于 Oracle 数据库预安装 RPM 程序建议的值
- 设置硬资源和软资源限制
- 设置其他推荐参数,具体取决于您的内核版本
- 在 Linux x86_64 和 Linux aarch64 计算机的内核中设置。
首次在系统上安装 Oracle Database 或 Oracle Grid Infrastructure 时,仅在作系统上配置 Oracle Database 预安装 RPM 一次。对于同一系统上的后续安装,请勿再次安装 Oracle Database Preinstallation RPM。
请勿在 Oracle 集成系统(如 Oracle Exadata Database Machine)上安装 Oracle Database Preinstallation RPM。Oracle 集成系统包括集成的系统软件,其中包含所需版本的作系统内核和所有软件包。
最小化操作系统资源参数设置
semmsl 250
semmns 32000
semopm 100
semmni 128
--shmall 大于或等于 shmmax 的值,位于页面 /proc/sys/kernel/shmall 中
--shmmax 物理内存大小的一半(以字节为单位) /proc/sys/kernel/shmmax
shmall Greater than or equal to the value of shmmax, in pages /proc/sys/kernel/shmall
shmmax Half the size of physical memory in bytes /proc/sys/kernel/shmmax
shmmni 4096
panic_on_oops 1
file-max 6815744
aio-max-nr 1048576
ip_local_port_range Minimum: 9000
ip_local_port_range Maximum: 65500
rmem_default 262144
rmem_max 4194304
wmem_default 262144
wmem_max 1048576
验证是否已加载最新版本的 PAM,然后在 /etc/pam.d/login 文件中添加或编辑以下行(如果尚不存在):
session required pam_limits.so
安装示例
$ export CV_ASSUME_DISTID=OL8 <<<<< If performing Installation on Oracle Linux 9
$ export CV_ASSUME_DISTID=RHEL8 <<<<< If performing Installation on RedHat Linux 9
$ mv $ORACLE_HOME/OPatch $ORACLE_HOME/OPatch_bkp
$ unzip -qqd $ORACLE_HOME <Location of OPatch Zip file>/p6880880_190000_Linux-x86-64.zip
For eg-
$ mv /u01/app/oracle/product/19c/dbhome_1/OPatch /u01/app/oracle/product/19c/dbhome_1/OPatch_bkp
$ unzip -qqd /u01/app/oracle/product/19c/dbhome_1 /u01/app/patches/p6880880_190000_Linux-x86-64.zip
To perform Installation using 19.22 DB RU+19.22 OCW Merge Patch
$ ./runInstaller -applyRU <19.22 DBRU Patch 35943157 unzip Location> -applyOneOffs <19.22 OCW RU 35967489 unzip location>
For eg-
$ ./runInstaller -applyRU /u01/app/patches/35940989/35943157 -applyOneOffs /u01/app/patches/35940989/35967489
参考链接
https://docs.oracle.com/en/database/oracle/oracle-database/19/cwlin/operating-system-checklist-for-oracle-grid-infrastructure-and-oracle-rac.html
https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/automatically-configuring-oracle-linux-with-oracle-preinstallation-rpm.html
https://docs.oracle.com/en/database/oracle/oracle-database/19/rnrdm/linux-platform-issues.html#GUID-9D8F6EB9-264D-479A-8F28-580E89BC6B4C
https://support.oracle.com/epmos/faces/Dashboard
Requirements for Installing Oracle Database/Client 19c (19.22 or higher) on OL9 or RHEL9
64-bit (x86-64) (Doc ID 2982833.1)
全文完,希望可以帮到正在阅读的你,如果觉得有帮助,可以分享给你身边的朋友,同事,你关心谁就分享给谁,一起学习共同进步~~~
欢迎关注我的公众号【JiekeXu DBA之路】,一起学习新知识!
——————————————————————————
公众号:JiekeXu DBA之路
墨天轮:https://www.modb.pro/u/4347
CSDN :https://blog.csdn.net/JiekeXu
ITPUB:https://blog.itpub.net/69968215
腾讯云:https://cloud.tencent.com/developer/user/5645107
——————————————————————————





