龙蜥系统Oracle 11g安装包:依赖打包与静默安装实战
简介这份资源面向需要在龙蜥Anolis操作系统上部署Oracle 11g数据库的运维与DBA人员提供了一套可自动化完成安装与数据恢复的整合包。Anolis OS作为阿里云维护的企业级Linux发行版是承载Oracle数据库的稳定基础环境而Oracle 11g的常规安装涉及依赖处理、环境变量配置、实例创建与监听器设置等繁琐环节本包通过脚本将这些步骤串联起来降低手动操作的门槛与出错概率。压缩包共11个文件以7个rpm安装包为主体辅以chkconfig服务配置、S01shm_load共享内存加载脚本、install.sh自动化安装脚本及conf配置文件整体约334.17MB覆盖从依赖安装到数据库初始化的关键环节。资源同时支持dmp文件的还原便于数据迁移与恢复场景。目前已有3017人学习下载适合希望快速搭建Oracle 11g实验或生产环境、并借助脚本提升部署效率的读者参考使用。1. 龙蜥系统上装 Oracle 11g一份 rpm 包到底能不能省掉半天折腾在龙蜥Anolis OS上装 Oracle 11g最耗时间的从来不是数据库本身而是前期依赖。官方安装介质是给 RHEL/OEL 准备的龙蜥的 glibc、libaio、ncurses 版本跟它默认预期经常对不上跑 runInstaller 之前先要过一遍依赖检查缺一个包就卡在 prerequisite 界面。这份「龙蜥 anolis 系统 oracle11g 安装包」把 Oracle 11g 需要的 rpm 依赖和安装介质打包在一起省掉的是逐个 yum 找包、逐个 rpm -ivh 试错的过程。它适合两类人一类是要在国产化环境里快速搭一套 Oracle 11g 做兼容性验证的 DBA另一类是接手了老系统、必须把 11g 跑在龙蜥上的运维。下面按「包是什么 → 怎么装 → 坑在哪」走一遍。2. 拆开这个包oracle11g.rpm 与依赖清单里到底有什么2.1 安装介质与依赖包的组成拿到一个标着 oracle11g 的 rpm 包第一件事不是急着装而是先看清楚它里面装的是什么。Oracle 11g 在 Linux 上的官方安装方式从来不是单个 rpm 搞定而是「安装介质runInstaller response file 一堆系统依赖 rpm」。所以这类打包资源通常分两层一层是 Oracle 自己的安装文件database 目录、response file 模板另一层是龙蜥上缺的依赖 rpm常见的有 libaio、libaio-devel、compat-libstdc、elfutils-libelf-devel、pdksh或 ksh、bc、binutils、make、sysstat 这些。先解包看清单别直接装# 建一个临时目录把 rpm 包解开看内容不直接安装 mkdir -p /tmp/oracle11g_inspect cd /tmp/oracle11g_inspect rpm2cpio /path/to/oracle11g.rpm | cpio -idmv # 看解出来的目录结构确认是安装介质还是依赖集合 find . -maxdepth 3 -type d | head -40rpm2cpio把 rpm 转成 cpio 流cpio -idmv解出来-i提取、-d建目录、-m保留时间戳、-v显示过程。这一步的意义是你能提前知道这个包是往/opt或/u01放安装文件还是往系统路径塞依赖库。如果解出来是一堆.rpm文件那它是依赖集合如果解出来是database/、response/这种目录那它是安装介质。2.2 龙蜥版本与 Oracle 11g 的兼容边界Oracle 11g 官方支持的最高认证版本大概到 RHEL 6/7 那一代龙蜥 8 基于较新的内核和 glibc直接跑会有兼容问题。所以选型上要清楚这份包解决的是「依赖能装上、安装程序能起来」不解决「Oracle 11g 在龙蜥 8 上被官方认证」。实际能跑但属于非认证组合生产环境要自己评估。判断兼容性先看两个东西# 看龙蜥版本和内核 cat /etc/os-release uname -r # 看 glibc 版本Oracle 11g 对 glibc 版本敏感 ldd --version | head -1/etc/os-release里的VERSION_ID告诉你这是龙蜥 7 还是 8。龙蜥 7 跟 RHEL 7 同代兼容性最好龙蜥 8 的 glibc 更新装 11g 时容易在链接阶段报GLIBC_2.xx not found之类的错。ldd --version看 glibc 主版本如果高于 2.17就要有心理准备部分二进制可能跑不起来需要额外处理。提示先确认你的龙蜥是 7 还是 8这决定了后面依赖包能不能直接用也决定了要不要额外做兼容处理。2.3 依赖 rpm 的安装顺序依赖包不是随便rpm -ivh *.rpm一把梭顺序错了会互相报依赖缺失。常见做法是先装基础库再装开发库最后装 Oracle 安装程序需要的工具。# 进入解出来的依赖目录按依赖层次分批装 cd /tmp/oracle11g_inspect/deps # 第一批基础运行库 rpm -ivh libaio-*.rpm libaio-devel-*.rpm # 第二批编译与工具链 rpm -ivh compat-libstdc-*.rpm elfutils-libelf-devel-*.rpm # 第三批Oracle 安装脚本依赖的 shell 和工具 rpm -ivh pdksh-*.rpm bc-*.rpm binutils-*.rpm make-*.rpm sysstat-*.rpmrpm -ivh里-i安装、-v显示详情、-h显示进度条。分批装的原因是libaio 是 Oracle 异步 IO 的基础必须先有compat-libstdc 提供老版本 C 运行库Oracle 11g 的二进制依赖它pdksh 是 Oracle 安装脚本里#!/bin/ksh的依赖龙蜥默认可能只有 bash缺了会在跑 root.sh 时报错。如果某个包报already installed说明系统已有跳过即可如果报Failed dependencies看它缺什么回到前一批补。3. 从零到库起来龙蜥上 Oracle 11g 的安装流程3.1 系统参数与用户环境准备Oracle 安装前必须调内核参数和用户限制否则安装程序会在 prerequisite 检查里直接标红。这一步跟发行版无关龙蜥上一样要做。# 1. 改内核参数写入 /etc/sysctl.conf cat /etc/sysctl.conf EOF kernel.shmmax 4294967295 kernel.shmall 1048576 kernel.shmmni 4096 kernel.sem 250 32000 100 128 fs.file-max 6815744 net.ipv4.ip_local_port_range 9000 65500 net.core.rmem_default 262144 net.core.rmem_max 4194304 net.core.wmem_default 262144 net.core.wmem_max 1048576 EOF # 生效 sysctl -p # 2. 改用户限制写入 /etc/security/limits.conf cat /etc/security/limits.conf EOF oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240 EOFkernel.shmmax是单个共享内存段最大值Oracle 的 SGA 靠它kernel.shmall是共享内存总页数kernel.sem是信号量四个值分别是 SEMMSL、SEMMNS、SEMOPM、SEMMNIOracle 对这几个有最低要求。limits.conf里nproc是进程数、nofile是打开文件数、stack是栈大小装库时如果 nofile 太小安装到一半会报ORA-27123之类的错。接着建 oracle 用户和目录# 建用户组和用户 groupadd -g 54321 oinstall groupadd -g 54322 dba useradd -u 54321 -g oinstall -G dba oracle passwd oracle # 建安装目录注意属主 mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1 chown -R oracle:oinstall /u01 chmod -R 775 /u01oinstall是 Oracle 清单组dba是数据库管理组这是 Oracle 的标准约定。目录属主必须是 oracle否则安装程序写不进去。/u01是 Oracle 的惯用挂载点你也可以换成别的路径但后面 response file 里的路径要跟着改。3.2 用 response file 静默安装图形界面在服务器上不一定有静默安装更稳。Oracle 11g 支持 response file把安装参数写进文件runInstaller 读它。# 切到 oracle 用户 su - oracle # 从解出来的介质里找 response file 模板 cd /tmp/oracle11g_inspect/database/response ls # 复制一份 db_install.rsp 改 cp db_install.rsp /tmp/my_db_install.rsp改 response file 的关键几项# 编辑 /tmp/my_db_install.rsp改这几行 oracle.install.optionINSTALL_DB_SWONLY ORACLE_HOSTNAMElocalhost UNIX_GROUP_NAMEoinstall INVENTORY_LOCATION/u01/app/oraInventory ORACLE_HOME/u01/app/oracle/product/11.2.0/dbhome_1 ORACLE_BASE/u01/app/oracle oracle.install.db.InstallEditionEE oracle.install.db.DBA_GROUPdba oracle.install.db.OPER_GROUPdbaINSTALL_DB_SWONLY表示只装软件不建库建库后面用 dbca 单独做这样可控。ORACLE_HOME和ORACLE_BASE必须跟前面建的目录一致。InstallEditionEE是企业版如果你只有标准版介质就改成 SE。然后跑安装# 静默安装-silent 表示无图形-responseFile 指定参数文件 cd /tmp/oracle11g_inspect/database ./runInstaller -silent -responseFile /tmp/my_db_install.rsp -ignorePrereq # 安装过程中会提示用 root 跑两个脚本另开终端执行 # /u01/app/oraInventory/orainstRoot.sh # /u01/app/oracle/product/11.2.0/dbhome_1/root.sh-silent无图形模式-responseFile指定参数文件-ignorePrereq跳过前置检查。-ignorePrereq要慎用它跳过的是检查不是问题本身如果真有缺包装到一半还是会失败。root.sh 必须用 root 跑它负责建/etc/oratab和设置一些系统级链接。3.3 建库与监听配置软件装完后建库用 dbca 静默模式# 切回 oracle 用户建库 su - oracle dbca -silent -createDatabase \ -templateName General_Purpose.dbc \ -gdbName orcl \ -sid orcl \ -responseFile NO_VALUE \ -characterSet AL32UTF8 \ -sysPassword oracle123 \ -systemPassword oracle123 \ -datafileDestination /u01/app/oracle/oradata \ -redoLogFileSize 50 \ -emConfiguration NONE-gdbName是全局库名-sid是实例名-characterSet AL32UTF8是字符集中文环境建议用这个。-emConfiguration NONE不配 EM省资源也省事。建库过程会跑几分钟看日志确认没有 ORA- 错误。监听用 netca 或直接写 listener.ora# 配监听 netca -silent -responseFile /tmp/netca.rsp # 启动监听 lsnrctl start # 看监听状态 lsnrctl statusnetca静默配监听lsnrctl start启动lsnrctl status看服务是否注册。如果 status 里看不到 orcl 服务可能是库没起sqlplus / as sysdba进去startup一下。4. 避坑与排查龙蜥上装 11g 最容易翻车的几个点4.1 现象runInstaller 报 GLIBC 版本不满足原因龙蜥 8 的 glibc 比 Oracle 11g 预期的版本新但 Oracle 的二进制链接的是老符号或者反过来安装程序自带的 JRE 跟新 glibc 不兼容。解决先确认是哪个二进制报错ldd看它依赖的 glibc 版本。如果是 JRE 问题可以换用系统自带的 JDK 跑安装程序或者用-jreLoc指定。如果是库文件符号缺失常见做法是装 compat 包补老符号但龙蜥 8 上不一定有对应包这时候要考虑降到龙蜥 7 或者用容器跑。4.2 现象root.sh 执行时报 pdksh 找不到原因Oracle 的 root.sh 脚本头部是#!/bin/ksh龙蜥默认没装 ksh或者装了但路径不对。解决装 pdksh 或 ksh 包然后确认/bin/ksh存在。如果包名在龙蜥上叫ksh就yum install ksh。装完再跑 root.sh。4.3 现象dbca 建库到一半报 ORA-27125原因共享内存参数不够或者 oracle 用户的 memlock 限制太低。解决检查/etc/sysctl.conf里的kernel.shmmax和kernel.shmall确认值够大。再看/etc/security/limits.conf里 oracle 的memlock加上oracle soft memlock unlimited和oracle hard memlock unlimited重新登录 oracle 用户生效。4.4 现象监听起来了但客户端连不上原因龙蜥的防火墙默认开着1521 端口没放行或者 listener.ora 里绑定的地址不对。解决firewall-cmd --add-port1521/tcp --permanent然后firewall-cmd --reload。如果是云主机还要看安全组。listener.ora 里HOST建议写主机名或具体 IP别写 localhost否则外部连不上。4.5 现象安装完 sqlplus 能连但中文乱码原因客户端和服务端字符集不一致或者NLS_LANG没设。解决确认建库时字符集是 AL32UTF8客户端环境变量export NLS_LANGAMERICAN_AMERICA.AL32UTF8。如果服务端已经是别的字符集改起来麻烦建库时就该定好。5. 装完之后怎么验证这套 11g 是真能用的装完不代表能用得跑一遍验证。我一般按这个顺序来从实例到网络到数据一层层确认。先看实例状态su - oracle sqlplus / as sysdba # 在 sqlplus 里执行 select instance_name, status from v$instance; select name, open_mode from v$database;v$instance的 status 应该是 OPENv$database的 open_mode 应该是 READ WRITE。如果 status 是 MOUNTED说明库没完全打开alter database open;一下。再看监听注册lsnrctl status # 输出里应该能看到 orcl 服务状态 READY如果服务没注册alter system register;手动注册一下。然后建个测试表插数据验证读写-- 在 sqlplus 里 create table t_test (id number, name varchar2(50)); insert into t_test values (1, test); commit; select * from t_test;能建表、能插入、能查出来说明存储和内存都正常。最后验证远程连接从另一台机器用 sqlplus 或客户端工具连# 在客户端机器上 sqlplus system/oracle123//服务器IP:1521/orcl # 连上后查 select sysdate from dual;这一步过了说明监听、网络、认证都通了。注意验证时用的密码别用弱密码测试完记得改掉。生产环境更不能用 oracle123 这种。这套流程走下来从解包看清单、装依赖、静默安装、建库配监听到最后的验证基本能覆盖龙蜥上装 Oracle 11g 的主要环节。我自己的习惯是每装完一套就写个 checklist把 sysctl 参数、limits、目录属主、字符集这几项记下来下次装直接对照比翻文档快。从那以后我每次拿到新的 rpm 包都先 rpm2cpio 解开看清单再动手这个习惯帮我省过好几次装到一半发现包不对的返工。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

高尔夫球场工单系统设计实战:从状态机到弱网优化

高尔夫球场工单系统设计实战:从状态机到弱网优化

1. 高尔夫球场运维场景的独特性:这套工单系统设计的真正起点先说个背景。很多同行拿到“给某某场地做一套工单管理系统”的需求时,第一反应是去找物业工单、IT运维工单的开源方案改一改。但高尔夫体育场的运维场景和写字楼、园区完全不是一回事&#xff…

2026/10/18 21:25:57 阅读更多 →
基于深度学习的人脸识别系统毕设设计与实现全流程指南

基于深度学习的人脸识别系统毕设设计与实现全流程指南

1. 为什么人脸识别是计算机毕设的“安全牌”?每年到了毕设选题季,总有一批同学在“创新性”“工作量”“能不能做出来”之间反复纠结。作为带过不少项目的过来人,我的观点很直接:如果既要满足答辩时“有技术含量”的要求&#xff…

2026/10/18 21:25:57 阅读更多 →
编码Agent搬出编辑器:本地优先工作台设计与落地实践

编码Agent搬出编辑器:本地优先工作台设计与落地实践

这两年聊 AI 编程,绕不开一个变化:编码 Agent 正在从编辑器里“搬出去”。大概一年前,主流形态还是 Copilot 行内补全、Cursor 右侧对话窗;而现在,Claude Code、Codex CLI、Aider、OpenHands 这些工具,已经…

2026/10/18 21:25:57 阅读更多 →

最新新闻

黑通道功能安全协议:从原理到落地的完整指南

黑通道功能安全协议:从原理到落地的完整指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 1:34:19 阅读更多 →
JavaWeb课设实战:Filter+Session权限控制与文件上传避坑指南

JavaWeb课设实战:Filter+Session权限控制与文件上传避坑指南

简介:这是一套基于JavaWeb技术栈开发的作业管理网站完整源码,面向计算机、通信、人工智能等专业的本科生及课程设计指导教师,用于支撑期末大作业、课程设计或毕业设计实践。系统采用JSPServletDruid连接池MySQL架构,涵盖用户登录、…

2026/10/19 1:34:19 阅读更多 →
助农小程序毕设技术选型:Java+MySQL+微信原生实战指南

助农小程序毕设技术选型:Java+MySQL+微信原生实战指南

简介:本资源是一套面向计算机专业本科生的毕业设计级微信小程序开发实战项目,聚焦助农扶贫场景,解决传统APP开发成本高、用户安装意愿低、存储占用大等痛点,适用于Java后端与小程序全栈学习者。压缩包共1205个文件,涵盖…

2026/10/19 1:34:19 阅读更多 →
Unity动态字体实战:用系统字体动态生成TMP SDF资产

Unity动态字体实战:用系统字体动态生成TMP SDF资产

简介:UnityNativeOSFont是一套面向Unity开发者的开源插件方案,核心解决TextMeshPro无法直接调用操作系统本地字体的问题。它通过C#脚本在运行时获取系统字体列表,并转换为TMP可用的动态字体资源,适合需要动态切换字体、本地化显示…

2026/10/19 1:34:19 阅读更多 →
嵌入式C指针入门到实践:寄存器映射、野指针与函数指针全解析

嵌入式C指针入门到实践:寄存器映射、野指针与函数指针全解析

1. 为什么要跟指针死磕:嵌入式里的那些绕不开的场景做嵌入式这行,早晚有一天你会被指针逼到墙角。我最早踩坑是在调试一块串口板卡的时候,外设寄存器手册里写着一堆偏移地址,代码里全是一长串强制类型转换的宏,不弄懂指…

2026/10/19 1:34:19 阅读更多 →
RAM盘与DISK盘真实性能对比测试方法

RAM盘与DISK盘真实性能对比测试方法

1. 项目概述:为什么一个“测速”动作值得花半天时间认真对待你有没有遇到过这样的情况:明明手里的固态硬盘标称读写速度是3500MB/s,但实际拷贝一个20GB的工程文件却要等三分钟?或者在做视频剪辑时,预览一帧要卡顿两秒&…

2026/10/19 1:33:18 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →