天天看点

Install Oracle 10g on SuSE 10

这次的经历是自己找来的,在安装了10g的那台机上升级下内存也便能忽悠那群友,不过想想还是折腾下吧,给移到配置好点的Server上面,他们用起来顺心,我自己也能折腾点经验。

132的系统是SuSE10.2的,之前已经安装了Oracle 9i,这就意味着必须先卸载掉9i,本以为安装10g的runInstaller能够卸载掉9i,可尝试了好久都是出现exception:

An unexpected exception has been detected in native code outside the VM.

Unexpected Signal : 11 occurred at PC=0xB7F22591

Function=(null)

Library=/lib/ld-linux.so.2

NOTE: We are unable to locate the function name symbol for the error

      just occurred. Please refer to release documentation for possible

      reason and solutions.

Current Java thread:

 at java.lang.ClassLoader$NativeLibrary.find(Native Method)

 at java.lang.ClassLoader.findNative(Unknown Source)

 - locked <0xa6fe1b20> (a java.util.Vector)

 at ssOiGenClassux22.deleteLink(Native Method)

 at sscreateLinkux.deinstallAction(sscreateLinkux.java:127)

 at oracle.sysman.oii.oiif.oiifw.OiifwDeinstallPhaseWCCE.doComponentDeinstalls(OiifwDeinstallPhaseWCCE.java:2046)

 at oracle.sysman.oii.oiif.oiifw.OiifwDeinstallPhaseWCCE.doOperation(OiifwDeinstallPhaseWCCE.java:405)

 at oracle.sysman.oii.oiif.oiifb.OiifbCondIterator.iterate(OiifbCondIterator.java:171)

 at oracle.sysman.oii.oiif.oiifw.OiifwActionsPhaseWCDE.doOperation(OiifwActionsPhaseWCDE.java:606)

 at oracle.sysman.oii.oiic.OiicDeinstallSession$OiicActionsThread.run(OiicDeinstallSession.java:2431)

Dynamic libraries:

08048000-08056000 r-xp 00000000 08:03 11228596   /tmp/OraInstall2010-03-01_05-17-06PM/jre/1.4.2/bin/java

......

Heap at VM Abort:

Heap

 def new generation   total 768K, used 567K [0xa6450000, 0xa6520000, 0xa6fd0000)

  eden space 704K,  71% used [0xa6450000, 0xa64cde70, 0xa6500000)

  from space 64K,  99% used [0xa6510000, 0xa651fff8, 0xa6520000)

  to   space 64K,   0% used [0xa6500000, 0xa6500000, 0xa6510000)

 tenured generation   total 9420K, used 6660K [0xa6fd0000, 0xa7903000, 0xafa50000)

   the space 9420K,  70% used [0xa6fd0000, 0xa7651150, 0xa7651200, 0xa7903000)

 compacting perm gen  total 13568K, used 13469K [0xafa50000, 0xb0790000, 0xb3a50000)

   the space 13568K,  99% used [0xafa50000, 0xb07776a8, 0xb0777800, 0xb0790000)

Local Time = Mon Mar  1 17:18:21 2010

Elapsed Time = 72

#

# The exception above was detected in native code outside the VM

#

# Java VM: Java HotSpot(TM) Client VM (1.4.2_08-b03 mixed mode)

#

以为是JVM的问题,尝试改变系统的JVM,不得而终;据说卸载9i得用9i的runInstaller,不过还是遭遇Exception:

Error occurred during initialization of VM

Unable to load native library: /tmp/OraInstall2003-10-25_03-14-57PM/jre/lib/i386/libjava.so:   symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time

无奈之下,只有选择手动卸载了:

1.将安装目录删除

[[email protected] /root]# rm -rf /opt/oracle/

2.将/usr/bin下的文件删除

[[email protected] /root]# rm /usr/local/bin/dbhome

[[email protected] /root]# rm /usr/ local/bin/oraenv

[[email protected] /root]# rm /usr/ local/bin/coraenv

3.将/etc/oratab删除

[[email protected] /root]# rm /etc/oratab

4.将/etc/oraInst.loc删除

[[email protected] /root]# rm /etc/oraInst.loc

5.将启动服务删除

[[email protected] /root]# chkconfig --del oracle

手动卸载相当顺利。(不过这样一删也把Oracle用户下的vncserver给删掉了,后面也整了点麻烦。)

卸载完了之后便准备安装Oracle 10g,安装Oracle需要一些必需的包,

“rpm -q binutils compat-db control-center gcc gcc-c++ glibc glibc-common / gnome-libs libstdc++ libstdc++-devel make pdksh sysstat xscreensaver libaio openmotif21"

否则无法运行runInstaller,而缺的包一般可通过系统安装盘得到。而其实有些包并非一定需要(比如package gnome-libs is not installed),可以试试运行./runInstaller -ignoreSysPrereqs.

卸载的时候把vncserver也给删掉了,后来想装却没成,也不知为何。HK同事建议用Exceed,没用过的东西,可以export X-window 的DISPLAY,再run安装命令,便可将安装界面导出到本地。

正式安装Oracle之前需要进行一些Prerequisite check,check到:

Checking operating system requirements ...

Expected result: One of redhat-3,redhat-4,SuSE-9,asianux-1,asianux-2

Actual Result: SuSE-openSUSE 10.2 (i586)

Check complete. The overall result of this check is: Failed <<<<

才发现,SuSE10是不支持oracle 10g的安装的。唯有改变版本信息,以暂时躲过Prerequisite check。修改/etc/SuSE-release

将:

openSUSE 10.2 (i586)

VERSION = 10.2

改成:

openSUSE 9 (i586)

VERSION = 9

(等安装完成后,将用回备份的SuSE-release文件)

还check到:

Checking available swap space requirements ...

Expected result: 3040MB

Actual Result: 1027MB

Check complete. The overall result of this check is: Failed <<<<

需要扩展虚拟内存,关于扩展虚拟内存,网上也是有相关链接的。

之后的安装便是相当顺利,建数据库,表空间,他们便就顺利地用上了。

有用的链接:

手动卸载9i的:

http://www.xxlinux.com/linux/article/development/database/20070517/8457.html

安装10g的:

http://www.oracle.com/technology/pub/articles/smiley_10gdb_install.html

SuSE10安装Oracle10g问题解决的:

http://www.novell.com/coolsolutions/appnote/17778.html

扩展虚拟内存的:

http://blog.chinaunix.net/u3/93470/showart_1931482.html