1. Oracle 11g 11.2.0.4 安装前必须搞清楚的几件事Oracle 11g 11.2.0.4 是 11g 系列最后一个补丁集版本很多老业务系统、ERP、报表平台至今仍跑在这个版本上。它是什么一句话Oracle 11gR2 的终极稳定版官方补丁支持周期最长兼容性最好。能做什么支撑单实例、DataGuard、RAC 等部署形态。适合谁需要在 Linux 上部署遗留系统、做数据迁移验证、或者维护老项目的 DBA 和运维同学。我试过在 CentOS 7 和 RHEL 6 上反复装这个版本踩过的坑集中在三块内核参数没配对导致安装器直接退出、依赖包缺失让 link 阶段报错、以及图形界面转发失败卡在第一步。这篇把从依赖检查到建库验证的完整链路拆开每一步都给可复制的命令和响应文件骨架你照着走一遍基本能一次过。需要说明的是11.2.0.4 的安装介质官方已不再公开下载你需要提前准备好p13390677_112040_Linux-x86-64_1of7.zip和2of7.zip两个包解压后合并成database目录。下面所有操作默认你用 root 做系统层配置用 oracle 用户做安装层操作。2. 环境预检与依赖包检查2.1 确认系统版本与内存交换分区先看系统底子内存建议不低于 2GB交换分区按内存 1.5 倍给cat /etc/redhat-release free -m df -h /tmp/tmp至少要有 1GB 空间否则安装器解压临时文件会失败。如果/tmp偏小可以临时挂一块mount -t tmpfs -o size2G tmpfs /tmp2.2 安装依赖包11.2.0.4 对 32 位兼容库有硬依赖缺一个就会在 link 阶段报undefined reference。用 yum 批量装最省事yum install -y binutils compat-libstdc-33 elfutils-libelf elfutils-libelf-devel \ gcc gcc-c glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel \ libgcc libstdc libstdc-devel make sysstat unixODBC unixODBC-devel libXp装完做一次核对下面这条命令会把已装和缺失的包一起列出来rpm -q --queryformat %{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n \ binutils compat-libstdc-33 elfutils-libelf gcc gcc-c glibc glibc-common \ glibc-devel ksh libaio libaio-devel libgcc libstdc libstdc-devel make \ sysstat unixODBC unixODBC-devel输出里出现not installed的单独补装。注意compat-libstdc-33在部分新源里已下架需要手动找 rpm 包rpm -ivh --nodeps装上。2.3 内核参数配置编辑/etc/sysctl.conf追加以下内容。kernel.shmmax建议设为物理内存的一半单位字节下面示例按 16GB 内存给cat /etc/sysctl.conf EOF # Oracle 11g 11.2.0.4 fs.aio-max-nr 1048576 fs.file-max 6815744 kernel.shmall 4294967296 kernel.shmmax 8589934592 kernel.shmmni 4096 kernel.sem 250 32000 100 128 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 -pkernel.shmall是共享内存总页数shmmax是单段最大值两者配合不好会出现ORA-27102: out of memory。改完用ipcs -l确认生效。2.4 用户、组与资源限制创建三个标准组和 oracle 用户groupadd oinstall groupadd dba groupadd oper useradd -g oinstall -G dba,oper oracle passwd oracle编辑/etc/security/limits.conf追加oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft stack 10240再确认/etc/pam.d/login里有这一行没有就加上session required pam_limits.so2.5 目录规划按 OFA 规范建目录ORACLE_BASE和ORACLE_HOME分开mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1 mkdir -p /u01/app/oraInventory chown -R oracle:oinstall /u01 chmod -R 775 /u013. 静默安装响应文件与配置骨架3.1 配置 oracle 用户环境变量切换到 oracle 用户编辑~/.bash_profileexport ORACLE_BASE/u01/app/oracle export ORACLE_HOME$ORACLE_BASE/product/11.2.0/dbhome_1 export ORACLE_SIDorcl export PATH$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH$ORACLE_HOME/lib export NLS_LANGAMERICAN_AMERICA.AL32UTF8 export EDITORvi umask 022source ~/.bash_profile生效后用echo $ORACLE_HOME确认路径无误。3.2 数据库软件静默安装响应文件在database/response目录下复制模板改名为db_install.rsp关键项如下oracle.install.optionINSTALL_DB_SWONLY ORACLE_HOSTNAMEorcltest UNIX_GROUP_NAMEoinstall INVENTORY_LOCATION/u01/app/oraInventory SELECTED_LANGUAGESen,zh_CN 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_GROUPoper oracle.install.db.config.starterdb.typeGENERAL_PURPOSE SECURITY_UPDATES_VIA_MYORACLESUPPORTfalse DECLINE_SECURITY_UPDATEStrueDECLINE_SECURITY_UPDATEStrue必须显式写否则静默安装会卡在更新检查。3.3 建库响应文件骨架复制dbca.rsp模板改名为dbca_create.rsp核心参数GDBNAMEorcl SIDorcl SYSPASSWORDOracle123 SYSTEMPASSWORDOracle123 CHARACTERSETAL32UTF8 NATIONALCHARACTERSETAL16UTF16 TOTALMEMORY4096 SAMPLESCHEMAtrue密码要满足复杂度否则 dbca 会静默失败。TOTALMEMORY按实际内存的 60% 到 70% 给。4. 执行安装与连通性验证4.1 静默安装数据库软件用 oracle 用户进入解压后的 database 目录cd /soft/database ./runInstaller -silent -ignorePrereq -responseFile /soft/database/response/db_install.rsp安装过程中会提示你以 root 执行两个脚本按提示操作sh /u01/app/oraInventory/orainstRoot.sh sh /u01/app/oracle/product/11.2.0/dbhome_1/root.shroot.sh执行时会问local bin directory直接回车用默认/usr/local/bin。4.2 静默建库dbca -silent -createDatabase -responseFile /soft/database/response/dbca_create.rsp建库耗时取决于磁盘SSD 上通常 5 到 10 分钟。完成后检查实例状态sqlplus / as sysdba SQL select instance_name,status from v$instance; SQL select name,open_mode from v$database;正常应返回OPEN和READ WRITE。4.3 监听配置与连通性验证用 netca 静默配置监听netca -silent -responseFile /soft/database/response/netca.rsp lsnrctl status看到LISTENER状态为READY即可。然后从客户端或本机用服务名连一次sqlplus system/Oracle123orcl SQL select sysdate from dual;能返回当前日期说明实例、监听、服务名解析全链路通了。5. 本篇常见报错排查5.1 安装器报 64 位系统检测失败报错You are attempting to install 64-bit Oracle on a 32-bit operating system实际系统是 64 位。这是runInstaller脚本里LONG_BIT检测逻辑误判编辑脚本注释掉exit 126那行即可vim /soft/database/runInstaller # 找到 exit 126; 前面加 #5.2 xhost: unable to display图形转发失败时先确认 DISPLAY 变量和 xhost 权限export DISPLAY:1.0 xdpyinfo | head xhost 如果xdpyinfo能输出一堆信息说明 X 服务正常问题在 DISPLAY 地址写错。用:1.0而不是IP:1.0往往能绕过。5.3 ORA-27102 out of memory共享内存参数不匹配。检查kernel.shmmax是否小于SGA_MAX_SIZE以及kernel.shmall是否够大。临时调大后sysctl -p再重启实例。5.4 监听起不来或端口占用lsnrctl start报TNS-12547时先看 1521 是否被占netstat -tlnp | grep 1521被占就改listener.ora里的端口或者杀掉占用进程。6. 安装完成后的收尾与后续接入实例跑起来后建议立刻做两件事一是把归档和闪回打开二是配置开机自启。归档参数这样设SQL alter system set log_archive_dest_1location/u01/app/oracle/arch scopespfile; SQL alter system set db_recovery_file_dest_size20G scopespfile; SQL alter system set db_recovery_file_dest/u01/app/oracle/fast_recovery_area scopespfile; SQL shutdown immediate SQL startup mount SQL alter database archivelog; SQL alter database flashback on; SQL alter database open;如果你后续要把这套库接到应用侧做联调或者需要统一管理多个实例的连接凭据可以走 API 网关的方式做一层转发和鉴权。TaoToken 的 API Keys 管理页在 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi_keysutm_campaignrewrite 接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 里面有完整的鉴权和调用示例。需要先验证模型或接口连通性的话模型对话入口在 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentchatutm_campaignrewrite 。长期跑编码任务或 Agent 场景Coding Plan 的说明在 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding_planutm_campaignrewrite 控制台在 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 。最后提醒一句11.2.0.4 的root.sh执行完会写/etc/oratab把里面的N改成Y配合dbstart和dbshut就能做开机自启。改完记得用crontab -e加一条reboot任务验证一次别等到下次重启才发现没生效。
企业数字化 ERP 产品动态
相关推荐
CRISPR-Cas9基因敲除全流程复盘:从gRNA设计到单克隆筛选的实用指南 聊基因编辑,这几年绕不开CRISPR。我们实验室在武汉,手上有个代号叫“伯远”的课题,从gRNA设计一路做到稳定敲除细胞株,前前后后折腾了两年多。中间踩过的坑不少,攒下来的经验也够写一篇长文了。这篇就当复盘࿰… · 2026/9/26 0:26:10
ironbci:运动想象脑机接口数据预处理与分类建模的Python工具库 做BCI研究这几年,最让人头疼的往往不是算法本身,而是数据预处理和流程搭建。每次换数据集、换受试者,都要重新写一套加载和清洗的代码,调试半天才发现是通道顺序对不上、事件标记偏移了这类低级问题。最近在GitHub上翻到pieeg-clu… · 2026/9/26 0:26:04
8G显存跑MiniMax-H3长视频:ComfyUI本地部署显存优化实战 1. 为什么8G显存跑长视频这件事值得认真聊先把结论摆在前面:8G显存跑MiniMax-H3长视频工作流,不是玄学,也不是靠某个"一键起飞"的开关,而是把显存占用拆成几块分别治理的结果。很多人一上来就问"哪个整合包能直接跑… · 2026/9/26 0:26:04
DeskcommCRM落地实践:打通销售与工单,构建客户360°视图 1. 为什么团队最终选择 DeskcommCRM:当工单系统和客户数据互相脱节先说下我所在团队的原状。我们是一家做企业级 SaaS 产品的创业公司,销售、售前、客户成功、技术支持四条线各用各的工具。销售那边用一套轻量 CRM 管商机,售后那边又挂了另一… · 2026/9/26 0:54:06
毕业设计实战:沙县小吃点餐系统从业务建模到部署避坑全指南 简介:沙县小吃点餐系统完整源码与毕业论文打包,面向计算机相关专业毕业设计或课程设计人群,可作为基于JavaWeb与MySQL的典型管理系统开发参考。资源覆盖管理员、用户及前台首页三个操作端,涉及小吃信息、门店信息、预约信息、订单… · 2026/9/26 0:53:03
QQ通讯组件做网页在线客服:临时会话原理与接入避坑指南 先说个很常见的场景:一个访客点开你网站上的“在线客服”,浏览器立刻唤起本机QQ,弹出一个聊天窗口,对方不用加好友、不用下载任何插件,直接就能和你对话。这种体验,其实就是“QQ通讯组件”在网页里的典型应… · 2026/9/26 0:52:57
Django大数据选品实战:直播带货商品评分模型与可视化全解析 我做直播电商相关系统也有几年了,去年带学生做毕业设计时,选了“基于Django大数据在直播带货商品选品中的应用”这个方向。这个题目乍一看有点“拼盘”:Django是大数据?选品用什么大数据?实际上把一个真实的小型数据决… · 2026/9/26 0:52:32
深入 Agent Sprite Forge 后处理引擎:洋红泛洪、连通域切帧与 GIF 编码原理 深入 Agent Sprite Forge 后处理引擎:洋红泛洪、连通域切帧与 GIF 编码原理 【免费下载链接】agent-sprite-forge Agent Skill for generating 2D sprite sheets and map, transparent PNG frames, and animated GIFs from prompts. 项目地址: https://gitcode.co… · 2026/9/26 0:52:32
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46