在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 这句即可.

ins_emdb_mk报错直接点continue 装完oracle后使用oracle用户输入命令:relink all

Oracle Linux Server release 5.7 x86_64

数据库版本     : Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi

在安装Oracle安装过程中,dbca 建instance的,遇到如下错误:ORA-27125: unable to create shared memory segment

clip_image002

分析解决:

以前遇到安装ORACLE成功后,启动过程中遇到ORA-27125错误, 也在博客ORA-27125: unable to create shared memory segment和博客ORA-27125里面记录过,于是按照解决方法做了如下操作:

   1: [root@DB-Server cdrom]# id oracle
   2:  
   3: uid=502(oracle) gid=502(oinstall) groups=502(oinstall),503(dba)
   4:  
   5: [root@DB-Server cdrom]# more /proc/sys/vm/hugetlb_shm_group
   6:  
   7: 0
   8:  
   9: [root@DB-Server cdrom]# echo 502 >/proc/sys/vm/hugetlb_shm_group
  10:  
  11: [root@DB-Server cdrom]# 

然后在/etc/sysctl.conf 里面添加参数vm.hugetlb_shm_group = 502,就可以在下次启动时不报ORA-27125错误。


如果在安装过程需要重新安装的,需删除之前安装的一些目录和文件

rm -rf /u01/oracle/*

rm /tmp/    带ora的目录和文件

rm /usr/lib/  带ora的目录和文件



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值