游乐游手机版
首页/数据库/文章详情

利用Oracle Pre-install RPM包简化环境预配置流程

时间:2026-07-07 07:06
Oracle数据库预安装RPM包自动配置Linux系统内核参数、用户组和目录权限,简化Oracle19c和21c版本环境预配置。仅支持64位x86架构的RHEL、CentOS、OracleLinux,需要启用官方软件仓库。安装后还需要手动执行sysctl--system命令、设置oracle数据库用户密码、检查limits d文件和SELinux策略,并修复
理解Oracle Pre-install RPM包,许多初次接触的数据库管理员常将其视为“一键部署神器”。坦率地说,它确实能简化工作,但仅限于最基础的重复性任务:在标准Linux发行版上为Oracle数据库19c或21c配置内核参数、用户组及目录权限。它并非万能补丁,不会处理SELinux策略、防火墙规则、ASM配置,更无法替代Oracle Grid Infrastructure的安装。

如何通过Oracle Pre-install RPM包简化环境预配置流程?

从本质上讲,这是Red Hat、CentOS或Oracle Linux官方维护的一个元包(oracle-database-preinstall-21coracle-database-preinstall-19c)。它封装好了这些关键配置:修改/etc/sysctl.conf、配置/etc/security/limits.d/oracle-database.conf、创建oracle用户及oinstall/dba组,并设定/u01目录的所有权。 当然,它的适用范围有明确边界: * 仅支持x86_64架构的RHEL 7/8/9、CentOS 7/8、Oracle Linux 7/8/9。 * 不支持Ubuntu/Debian,也不兼容ARM平台(如Oracle Cloud的ARM实例)。 * 安装后系统不会自动reload sysctl,需要手动执行 sysctl --system 才能生效。 ### 如何安装?包名与仓库源容易混淆 许多新手直接运行yum install oracle-database-preinstall-21c,结果遇到报错。这很正常,因为默认仓库中并未启用Oracle的Public Yum或ULN(Unbreakable Linux Network)源。 正确的安装流程分为两步: * **Oracle Linux用户**:先执行dnf install -y oraclelinux-developer-release-el8(以EL8为例)启用开发者仓库,然后再运行dnf install -y oracle-database-preinstall-21c。 * **RHEL/CentOS用户**:首先导入Oracle的GPG key:rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle。接着配置repo文件(如/etc/yum.repos.d/public-yum-ol8.repo),最后执行安装命令。 这里有一个细节需注意:包名对版本要求非常严格。oracle-database-preinstall-19coracle-database-preinstall-21c 不能混用。更关键的是,21c版本默认将vm.swappiness设为1,而19c版本则为0,如果您有特定的调优倾向,安装后务必检查确认。 ### 装完后是否万事大吉?这些配置仍需人工核实 RPM包会写入一些固定值,但这些值未必适合您的生产环境。例如,它将kernel.shmall设为2097152,而实际生产中需要根据物理内存重新计算(公式为shmall = 总内存字节数 / 页大小)。此外,它会创建/u01目录,但不会替您格式化或挂载磁盘。 以下几个关键点,必须人工逐一确认: * oracle用户的密码默认为空,后续必须通过passwd oracle设置密码,否则runInstaller会在用户验证阶段卡住。 * 使用ulimit -a查看时,可能发现max locked memory仍为unlimited,但Oracle Installer要求显式设定为unlimited或具体数值。请检查/etc/security/limits.d/oracle-database.conf,确认其中包含oracle soft memlock unlimited这一行。 * 如果系统启用了systemd-logind,它可能会覆盖limits.d的配置,导致LimitMEMLOCK失效。解决方法是在/etc/systemd/logind.conf中补充LimitMEMLOCK=infinity,然后重启systemd-logind服务。 ### 与手动配置相比,性能或安全有妥协吗? 从性能和安全角度看,没有本质的妥协。但必须承认,RPM包的预设值偏向保守。举例来说,fs.aio-max-nr被设置为1048576,对大多数单实例够用,但如果是RAC环境或高并发OLTP系统,可能需要将其调高至2097152net.ipv4.tcp_fin_timeout保持默认的60,而一些经验丰富的DBA习惯调低该值以加快连接回收。 真正需要警惕的是:这个RPM包不管理/etc/hosts文件的配置。如果主机名解析出现问题(例如localhost.localdomain没有正确指向127.0.0.1),Oracle Installer就会报错 PRVF-4657 : Name resolution setup check failed。这个问题需要您手动修复,RPM包完全不会干预。 另外,它从不修改/etc/selinux/config,但Oracle官方明确要求,在安装前必须将SELINUX设置为permissivedisabled。若跳过这一步,后续的静默安装很可能因AVC拒绝而失败。
来源:https://www.php.cn/faq/2753409.html
上一篇MySQL间隙锁防止幻读原理详解 下一篇Agent轨迹分析与归因的数据工程实践方法详解
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
用Qwen大模型为MySQL查询推荐最佳可视化图表
数据库 · 2026-07-07

用Qwen大模型为MySQL查询推荐最佳可视化图表

如何用Qwen大模型为MySQL查询自动推荐最佳可视化图表 你是否希望从MySQL查出的销售数据自动生成柱状图,而不是对着满屏数字发呆?刚写完一条SELECT语句,却不确定该使用折线图还是热力图来展示时间趋势?或者你把查询结果复制进Excel后才想起,其实散点图更能说明问题。这些场景是不是很熟悉?

MongoDB 4.0事务处理机制底层原理详解
数据库 · 2026-07-07

MongoDB 4.0事务处理机制底层原理详解

MongoDB4 0多文档事务深度复用WiredTiger引擎原生多行事务能力,基于快照隔离和MVCC机制。事务启动获取clusterTime,读操作基于固定快照,写冲突在提交时检测。oplog异步刷盘可能影响持久性,生产环境需启用journal并控制事务超时。

Qwen大模型助力MySQL敏感数据脱敏与隐私保护
数据库 · 2026-07-07

Qwen大模型助力MySQL敏感数据脱敏与隐私保护

借助Qwen大模型一键生成合规的MySQL脱敏SQL语句 先看一个真实业务场景:你需要在MySQL中对姓名、手机号、身份证号这类敏感字段进行合规脱敏,且脱敏逻辑要具备可复用性、可审计性、可回溯能力。此时直接打开Qwen的Web界面或调用API,输入一条清晰指令就能搞定——例如:“请为MySQL表us

数据库里最反直觉的陷阱:NULL不等于空,90%新手踩过坑
数据库 · 2026-07-07

数据库里最反直觉的陷阱:NULL不等于空,90%新手踩过坑

NULL是数据库中表示“未知”的特殊标记,而非空值或0。它引入三值逻辑,导致用=NULL查不出数据、COUNT(column)忽略NULL、运算结果全为NULL、NOTIN遇NULL返回空、排序位置因数据库而异。正确处理需用ISNULL判断、COALESCE赋默认值、NOTEXISTS替代NOTIN,建表时尽量设置NOTNULL。

Qwen大模型生成MySQL性能优化量化对比报告测评
数据库 · 2026-07-07

Qwen大模型生成MySQL性能优化量化对比报告测评

Qwen大模型能够基于两份CSV文件,自动生成一份包含QPS、延迟等8项核心指标的MySQL优化量化对比报告。您只需导出规范的CSV数据,使用特定提示词触发解析,再将结果转为HTML或PDF格式即可交付。此外,通过三步验证流程,可确保所有数据真实可信,满足技术评审要求。需要一份能直接用于技术评审或D