红联Linux门户
Linux帮助

在linux上安装64位oracle 10g的经历

发布时间:2008-07-23 00:07:48来源:红联作者:Whretofi
昨天在一台新的机器装64位的linux和oracle 10G,32位的linux和oracle装了无数次,心想这对我来讲还不是小菜。没想到遇到了几个非常棘手的问题,今天终于搞定了。
64位的LINUX安装没有什么区别,只是安装完了网卡找不到,PC机的供应商提供了一个驱动,是C语言的源程序,按照readme的提示make了一下就搞定了。
然后是把64位的oracle安装包传上去,先gunzip解压,再cpio -idmv < 文件名展开。打开oracle的官方文档,发现64位的安装方法居然和32位的一模一样,一路轻车熟路,装完了,只是没有建库。
下午用建库,刚刚输完dbca,就出现了下面的提示:
$ dbca
UnsatisfiedLinkError exception loading native library: njni10
Exception in thread "main" java.lang.UnsatisfiedLinkError: get
at oracle.net.common.NetGetEnv.get(Native Method)
at oracle.net.config.Config.getNetDir(Unknown Source)
at oracle.net.config.Config.initConfig(Unknown Source)
at oracle.net.config.Config.(Unknown Source)
at oracle.sysman.assistants.util.NetworkUtils.(NetworkUtils.java:222)
at oracle.sysman.assistants.util.step.StepContext.(StepContext.java:255)
at oracle.sysman.assistants.dbca.backend.Host.(Host.java:682)
at oracle.sysman.assistants.dbca.ui.UIHost.(UIHost.java:205)
at oracle.sysman.assistants.dbca.ui.InteractiveHost.(InteractiveHost.java:54)
at oracle.sysman.assistants.dbca.Dbca.getHost(Dbca.java:160)
at oracle.sysman.assistants.dbca.Dbca.execute(Dbca.java:94)
at oracle.sysman.assistants.dbca.Dbca.main(Dbca.java:180)
上网查了半天,看来是少装了包,按照oracle的官方文档检查,包都有呀!再把网上网友推荐的各种包都装上试试,4张linux的安装盘在光驱里换来换去,装了各种包都没有用,一直到下班也没有搞定。
对这个linux的安装盘没有信心了,吸取换盘麻烦的教训,晚上换回家下载一个DVD的安装盘,一上centos的网站,发现最新的4已经的4.6了,刚刚 出来的。于是下载一个4.6的DVD安装盘,2.5G下了一晚上,60K多的流量,搞得今天上班也迟到了。用刚刚刻好的DVD安装盘重新安装LINUX, 但刚刚装ORACLE时就遇到了问题,比昨天更糟!
$ ./runInstaller
Starting Oracle Universal Installer...

Checking installer requirements...

Checking operating system version: must be redhat-3, SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2
Passed


All installer requirements met.

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2008-01-09_12-23-11PM. Please wait ...[oracle@web9p database]$ Oracle Universal Installer, Version 10.2.0.1.0 Production
Copyright (C) 1999, 2005, Oracle. All rights reserved.

Exception java.lang.UnsatisfiedLinkError: /tmp/OraInstall2008-01-09_12-23-11PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory occurred..
java.lang.UnsatisfiedLinkError: /tmp/OraInstall2008-01-09_12-23-11PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at sun.security.action.LoadLibraryAction.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.awt.NativeLibLoader.loadLibraries(Unknown Source)
at sun.awt.DebugHelper.(Unknown Source)
at java.awt.Component.(Unknown Source)
at oracle.sysman.oii.oiif.oiifm.OiifmGraphicInterfaceManager.(OiifmGraphicInterfaceManager.java:222)
at oracle.sysman.oii.oiic.OiicSessionInterfaceManager.createInterfaceManager(OiicSessionInterfaceManager.java:193)
at oracle.sysman.oii.oiic.OiicSessionInterfaceManager.getInterfaceManager(OiicSessionInterfaceManager.java:202)
at oracle.sysman.oii.oiic.OiicInstaller.getInterfaceManager(OiicInstaller.java:436)
at oracle.sysman.oii.oiic.OiicInstaller.runInstaller(OiicInstaller.java:926)
at oracle.sysman.oii.oiic.OiicInstaller.main(OiicInstaller.java:866)
从提示上看是少了一个libXp.so.6文件,但不知道这个文件在哪个包里,看来得用yum了,幸好是DVD的安装盘,本身就带一个yum的源
把DVD mount到/mnt目录,按下面的方法配置
[c4-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt
gpgcheck=0
enabled=1
用yum whatprovides libXp.so.6一查,发现在包xorg-x11-deprecated-libs中。
用rpm装的时候提示和其它包有依赖关系,装不上,用yum装一下
# yum install xorg-x11-deprecated-libs

Transaction Summary
=============================
Install 7 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 4.3 M
Is this ok [y/N]: y
Downloading Packages:
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: zlib ######################### [1/7]
Installing: freetype ######################### [2/7]
Installing: expat ######################### [3/7]
Installing: fontconfig ######################### [4/7]
Installing: xorg-x11-libs ######################### [5/7]
Installing: xorg-x11-deprecated-libs ######################### [6/7]
Installing: xorg-x11-Mesa-libGL ######################### [7/7]

Installed: xorg-x11-deprecated-libs.i386 0:6.8.2-1.EL.33
Dependency Installed: expat.i386 0:1.95.7-4 fontconfig.i386 0:2.2.3-13.el4 freetype.i386 0:2.1.9-6.el4 xorg-x11-Mesa-libGL.i386 0:6.8.2-1.EL.33 xorg-x11-libs.i386 0:6.8.2-1.EL.33 zlib.i386 0:1.2.1.2-1.2
原来和7个包有依赖关系。
好!oracle软件终于装上了!
现在建库,老天!和昨天一样的提示:
$ dbca
UnsatisfiedLinkError exception loading native library: njni10
Exception in thread "main" java.lang.UnsatisfiedLinkError: get
at oracle.net.common.NetGetEnv.get(Native Method)
at oracle.net.config.Config.getNetDir(Unknown Source)
at oracle.net.config.Config.initConfig(Unknown Source)
at oracle.net.config.Config.(Unknown Source)
at oracle.sysman.assistants.util.NetworkUtils.(NetworkUtils.java:222)
at oracle.sysman.assistants.util.step.StepContext.(StepContext.java:255)
at oracle.sysman.assistants.dbca.backend.Host.(Host.java:682)
at oracle.sysman.assistants.dbca.ui.UIHost.(UIHost.java:205)
at oracle.sysman.assistants.dbca.ui.InteractiveHost.(InteractiveHost.java:54)
at oracle.sysman.assistants.dbca.Dbca.getHost(Dbca.java:160)
at oracle.sysman.assistants.dbca.Dbca.execute(Dbca.java:94)
at oracle.sysman.assistants.dbca.Dbca.main(Dbca.java:180)
从网上搜索的情况看,还有包没有装,很可能是
glibc-32bit-8.1-9
glibc-devel-32bit-8.1-9
中的第二个包没有装,oracle也不提示!
用rpm装上,然后重新连一下,
$ORACLE_HOME/bin/relink all
行了!搞定!
最大的教训,安装linux时还是用老版本好呀!oracle的人写文档时是基于老版本测试的,新版本里一些包反而没有!
文章评论

共有 5 条评论

  1. yanlong938 于 2010-08-09 02:59:22发表:

    好贴啊 顶个。。。

  2. 秦合六一 于 2010-07-09 19:50:54发表:

    我用的是ubuntu 9.10的,不知道谁有这方面的oracle,能不能给个地址!

  3. sky2009 于 2010-02-20 09:49:51发表:

    你装linux的版本是多少啊,能把必须的安装包还有内核参数贴出来吗?

  4. laoqizzz 于 2010-01-14 23:28:42发表:

    非常感谢

  5. myfreel 于 2010-01-03 13:25:58发表:

    好想有帮助。