64位Linux系统上安装64位Oracle10gR2及Oracle11g所需的依赖包

在64位Linux系统上安装64位Oracle 10gR2,到底需要装哪些包?

这不是一个完整的安装教程,仅仅探讨在64位CentOS 5.8系统上安装64位Oracle 10gR2,到底需要装哪些RPM包.

实验环境
VMWare Workstation 8.0
Linux发行版: CentOS 5.8 x86_64
Kernel版本: 2.6.18-308.el5
Oracle Database版本: 10201_database_linux_x86_64.cpio.gz

为了避免受其他rpm包的干扰,笔者在安装Linux的时候选择了最小化安装,即文字模式下安装,去掉所有可选的包,结果总共仅安装了232个rpm包.算是一个很小的Linux系统了;

装过ORACLE的人都知道,在装ORACLE之前要先装一些RPM包,在官方安装指南中,ORACLE并没有告知在RHEL 5.x系列下应该装哪些包;如果参照RHEL 4.x系列来装,必出错;

网上搜一下也有很多在RHEL 5.x系列上安装ORACLE的教程,但大多都是32位的平台;若照抄到64位平台也必出错;

经过笔者反复测试 , 发现以下 10 RPM 包是必装的 :
这里我省略了RPM包的主、次版本号,因为我相信现在的Linux发行版中的RPM包的版本号绝对会比ORACLE 10g要求的版本号高;
binutils.x86_64
compat-libstdc++-33.x86_64
gcc.x86_64
glibc-devel.x86_64
glibc-devel.i386
libaio.x86_64
libXp.i386
libXt.i386
libXtst.i386
make.x86_64

为什么说是必装的呢?下面分别说明一下:
binutils.x86_64
gcc.x86_64
libaio.x86_64
make.x86_64
这4个包是OUI预检时必查的,少了任何一个都会预检不通过;

compat-libstdc++-33.x86_64
如果少了这个包,则安装过程中会报以下错:
Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/product/10.2.0/db_1/rdbms/lib/ins_rdbms.mk'

glibc-devel.x86_64
如果少了这个包,则安装过程中会报以下错:
Error in invoking target 'ntcontab.o' of makefile '/u01/app/oracle/product/10.2.0/db_1/network/lib/ins_net_client.mk'

glibc-devel.i386
如果少了这个包,则安装过程中会报以下错:
Error in invoking target 'install' of makefile '/u01/app/oracle/product/10.2.0/db_1/ctx/lib/ins_ctx.mk'
补装后又报Error in invoking target 'agent nmo nmb' of makefile '/u01/app/oracle/product/10.2.0/db_1/sysman/lib/ins_sysman.mk'
退出,重装ORACLE就OK了;

libXp.i386
libXt.i386
libXtst.i386
如果少了这3个包,则OUI起不来,分别报如下错:
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2012-07-16_12-22-25PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2012-07-16_12-26-27PM/jre/1.4.2/lib/i386/libawt.so: libXt.so.6: cannot open shared object file: No such file or directory
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2012-07-16_12-29-27PM/jre/1.4.2/lib/i386/libawt.so: libXtst.so.6: cannot open shared object file: No such file or directory

笔者在仅安装了这10个包以后,顺利的装上了ORACLE软件,并用DBCA顺利的创建了数据库;

可能需要的依赖包 :
如果用rpm命令装的话,可能还需要手动装以下的依赖包;
如果用yum命令来装的话就可以忽略以下的依赖包了,因为yum会自动安装这些依赖包;
glibc-headers.x86_64 //glibc-devel.x86_64,glibc-devel.i386都依赖它;
kernel-headers.x86_64 //glibc-headers.x86_64依赖它;
cpp.x86_64 //gcc.x86_64依赖它;
libgomp.x86_64 //gcc.x86_64依赖它;
libICE.i386 //libXt.i386依赖它;
libSM.i386 //libXt.i386依赖它;

最后想补充一点的是,某些教程中喜欢用./runInstaller -ignoreSysPrereqs命令来跳过操作系统检查,笔者测试了一下,这样做虽然可以顺利启动OUI,但在后续的安装过程中会出现一些莫名的错误,所以不建议这么做.
笔者的解决方法是修改/etc/redhat-release文件,清空该文件里的内容(注意是清空,而不是注释掉),并加入 redhat-4 这句即可.

安装oracle11G所需要的依赖包

安装oracle11G 前,需要在Linux系统中检查是否安装以下依赖包。

binutils----------------2.20.0-0.79

gcc ----------------4.3-62.198 N

gcc-c++ ----------------4.3-62.198 N

glibc ----------------2.11.1-0.17.4

glibc-devel ------------2.11.1-0.17.4 N

ksh ------------93t-9.9.8

libaio -------------0.3.109-0.1.46

libaio-devel------------0.3.109-0.1.46 N

libgcc43----------------4.3.4-20091019-0.7.35

libstdc++33-------------3.3.3-11.9

libstdc++43-------------4.3.4_20091019-0.7.35

libstdc++-devel---------4.3-62.192 N

libstdc++43-devel-------4.3.4_20091019-0.7.35 N

make--------------------3.81-128.20

orarun------------------1.9-172.20.21.54 N

sysstat-----------------8.1.5-7.9.56 N

On SUSE 11L 可不安装

unixODBC-32bit-2.2.12 (32-bit) or later

unixODBC-devel-32bit-2.2.12 (32 bit) or later

unixODBC-devel

相关推荐
Jurio.12 分钟前
tmux 安装与使用教程:SSH 断开后任务继续运行,终端分屏与多窗口管理
linux·经验分享·ssh·tmux
YJlio14 分钟前
《Sysinternals实战指南》16.5 Ctrl2Cap 工具详解:把 Caps Lock 变成 Ctrl 的键盘改造与回退方法
linux·运维·服务器·网络·python·学习·计算机外设
l'm coming25 分钟前
[linux]内核启动加载驱动文件的流程
linux·arm开发·驱动开发·嵌入式
王二端茶倒水41 分钟前
智慧小区宽带无线运营:从网络交付到认证、计费与运维闭环
运维·物联网·架构
旅僧1 小时前
远程终端工具安装
运维
一拳一个娘娘腔1 小时前
CVE-2026-31431 — “Copy Fail“ 深度拆解
linux·安全
OpsEye1 小时前
日志、指标、链路追踪,谁更适合定位故障?
运维·监控·日志分析
麦麦麦当劳大王1 小时前
Linux SSH服务端配置指南
linux·运维·服务器·ssh
xiami_world2 小时前
私有化部署协同白板选型指南:从Docker容器化到信创全栈适配的架构实践
运维·人工智能·docker·ai·持续部署
weixin_307779132 小时前
从脚本执行到智能体协作:AI辅助测试能力的范式重构
运维·开发语言·人工智能·算法·测试用例