RedHat Linux AS5安裝Oracle 10g 及常見問題

來源:互聯網
上載者:User

環境:

Operating System: windows xp

Virtual machine: VMware 5.5.3

Linux: RHEL 5

註:由於RHEL 5不是Oracle官方文檔中的支援版本,所以以下檢查配置項均參照Oracle對RHEL 4.0的要求。

一、檢查硬體

1.查看RAM和交換空間以及磁碟大小

命令:#grep MemTotal /proc/meminfo

           #grep SwapTotal /proc/meminfo

            #df -h

           #df -k /tmp

要求:

所需最小 RAM 為 256MB,而所需最小交換空間為 512M。對於 RAM 小於或等於 2GB 的系統,交換空間應為 RAM 數量的兩倍;對於 RAM 大於 2GB 的系統,交換空間應為 RAM 數量的一到兩倍。
Oracle 10g 軟體還需要 2.5GB 的可用磁碟空間,而資料庫則另需 1.2GB 的可用磁碟空間。/tmp 目錄至少需要 400MB 的可用空間。

但10g官方要求為:最小RAM 為1024MB, SWAP為RAM的2倍。RAM為1025MB~2048MB,SWAP為RAM的1.5倍。RAM為2049MB~8192MB,SWAP與RAM相等。RAM大於8192MB,SWAP為RAM的0.75倍。/tmp目錄至少400MB。安裝Oracle 10g軟體需1.5GB~3.5GB磁碟空間。Oracle資料庫需要1.2GB磁碟空間。

 

二、驗證Linux安裝

1、檢查核心版本

命令:

          #uname -r

所需版本:2.6.9-5.EL(為官方RHEL 4.0的要求)

2、檢查所需軟體包

命令:

         #rpm -q package-name

所需包及其版本:

    binutils-2.15.92.0.2-13.EL4
   compat-db-4.1.25-9
   compat-libstdc++-296-2.96-132.7.2
   control-center-2.8.0-12
   gcc-3.4.3-22.1.EL4
   gcc-c++-3.4.3-22.1.EL44
   glibc-2.3.4-2.9
   glibc-common-2.3.4-2.9
   gnome-libs-1.4.1.2.90-44.1
   libstdc++-3.4.3-22.1
   libstdc++-devel-3.4.3-22.1
   make-3.80-5
   pdksh-5.2.14-30
   sysstat-5.0.5-1
   xscreensaver-4.18-5.rhel4.2
   setarch-1.6-1

*******如果有軟體包未安裝,插入Linux系統安裝光碟片,使用以下方法安裝*******

#rpm -ivh package-name-major-version*

例如:#rpm -Uvh compat-db-4*

註:1.其中sysstat-5.0.5-1和xscreensaver-4.18-5.rhel4.2包在光碟片中未找到。到其他連結下載了相關包進行安裝

        2.在安裝openmotif-*包時,提示需要libXp.so.6包的支援。本人比較懶,就直接rpm安裝了libXp-*。

三、針對Oracle配置Linux

1、新群組和使用者

*使用者帳戶將稱為 oracle,而組將稱為 oinstall 和 dba。

命令:

         /usr/sbin/groupadd oinstall
         /usr/sbin/groupadd dba
         /usr/sbin/useradd -g oinstall -G dba oracle
          id oracle

*設定Oracle使用者口令

命令:

          passwd oracle

*建立目錄

以root使用者登陸

命令:

           mkdir -p /u01/data/oracle

          mkdir -p /u02/oradata

          chown -R oracle:oinstall /u01 /u02

          chmod -R 775 /u01 /u02

*Oracle使用者的環境變數

要使用 Oracle 產品,應該或必須設定幾個環境變數。對於資料庫伺服器,建議設定以下環境變數:
ORACLE_BASE
ORACLE_HOME
ORACLE_SID
PATH

1、oracle10g官方不支援as5 但支援as4等其它版本 所以要修改一下 其實有三種解決辦法
    a、修改系統版本
       編輯/etc/redhat-release
       #vi /etc/redhat-release
       Red Hat Enterprise Linux Server release 5 (Tikanga)
       改為
       Red Hat Enterprise Linux Server release 4 (Tikanga)

        *但請記住在Oracle安裝完成之後將系統修改回原來的版本

    b、修改oracle安裝檔案 將 redhat-5 填上
       # vi /10201_database_linux32/database/install/oraparam.ini
       ### #[Certified Versions]
       Linux=redhat-3,SuSE-9,redhat-4,redhat-5,UnitedLinux-1.0,asianux-1,asianux-2]
       再添加
       [Linux-redhat-5.0-optional]
       TEMP_SPACE=80
       SWAP_SPACE=150
       MIN_DISPLAY_COLORS=256
   c、最簡單的方法 在安裝時忽略系統檢查
     sh ./runInstaller -ignoreSysPrereqs
   

2、為了防止在安裝 出現亂碼 需更改系統語言
    # vi /etc/sysconfig/i18n
    LANG="en_US.UTF-8"

3、修改核心參數
    # vi /etc/sysctl.conf
    kernel.shmall = 2097152 '已經定義了 修改即可
    kernel.shmmax = 2147483648 '已經定義了 修改即可
    kernel.shmmni = 4096
    # semaphores: semmsl, semmns, semopm, semmni
    kernel.sem = 250 32000 100 128
    fs.file-max = 65536
    net.ipv4.ip_local_port_range = 1024 65000
    net.core.rmem_default=1048576
    net.core.rmem_max=1048576
    net.core.wmem_default=262144
    net.core.wmem_max=262144

   執行下面的命令 使上面的設定有效
    # /sbin/sysctl -p

4、更改設定  
   # vi /etc/security/limits.conf
    行末添加以下內容
    * soft nproc 2047
    * hard nproc 16384
    * soft nofile 4096
    * hard nofile 65535
               
    添加以下內容 # /etc/pam.d/login
    session required /lib/security/pam_limits.so

    在/etc/profile檔案中添加以下內容

     if [ $USER = "oracle" ]; then
        if [ $SHELL = "/bin/ksh" ]; then
              ulimit -p 16384
              ulimit -n 65536
        else
              ulimit -u 16384 -n 65536
        fi
    fi

    上面的設定都是在root使用者下進行的

四、設定環境變數 ---以oracle登入

    把以下寫在.bashrc
    TMP=/tmp; export TMP
    TMPDIR=$TMP; export TMPDIR
    ORACLE_BASE=/opt/oracle; export ORACLE_BASE
    ORACLE_HOME=$ORACLE_BASE/product/10.2.0.1/db_1; export ORACLE_HOME
    ORACLE_SID=WCHDB1; export ORACLE_SID
    ORACLE_TERM=xterm; export ORACLE_TERM
    PATH=/usr/sbin:$PATH; export PATH
    PATH=$ORACLE_HOME/bin:$PATH; export PATH
    LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
    CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
    或者寫在
    #vi .bash_profile
    然後
    #source ~/.bash_profile

五、 安裝
用oracle登入 運行 sh ./runInstaller

亂碼解決方案:

export LC_CTYPE=en_US.UTF-8

錯誤解決方案
錯誤一:

 /tmp/OraInstall2007-12-30_02-16-11PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open  shared object file: No such file or directory occurred..

 原因是:缺少支援列印的圖形化動態連結程式庫libXp.so.6

這個錯誤是由於缺少系統安裝包,在RHEL5以前的版本,可以安裝xorg-x11-deprecated-libs包即可,這個安裝包可以在系統光碟片第三張盤中找到(對於redhat as4.2以前,redhat as4.4是在第四張安裝光碟片)

IXDBA.NET社區論壇

我下載的檔案如下:

xorg-x11-deprecated-libs-6.8.2-31.i386.rpm

 

錯誤二:

Exception :java.lang.UnsatisfiedLinkError:/usr/java/j2sdk1.4.2_06/jre/lib/i386/libawt.so: libXt.so.6: cannot open shared object file: No such file or directory
這個錯誤是也是由於缺少系統安裝包造成的,只需安裝XFree86-libs包即可,這個安裝包可以在系統光碟片中找到。

 

在上面兩個錯誤如果出現在redhat as5版本中,解決如下:

在RHEL5中上面的包被libXp所取代了,因此rpm -ivh libXp-1.0.0-8.i386.rpm將包打上後問題即可解決。

 

錯誤三:

error while loading shared libraries: libstdc++-libc6.1-1.so.2

只用執行如下操作 ln -s libstdc++-libc6.2-2.so.3 libstdc++-libc6.1-1.so.2

參考案例

案例一:

在RHEL5上測試安裝oracle10g,本以為之前轉過11g,這次會比較順利,結果還是遇到兩個問題。

    首先,在執行runInstaller時,系統報錯:

You do not have sufficient permissions to access the inventory '/oracle11g/oraInventory'. Installation cannot continue. Make sure that you have read/write permissions to the inventory directory and restart the installer.: Permission denied

這裡採用的是建立一個10g使用者的方法讓10g,11g並存,實際上在啟動安裝程式的時候,oracle會去找/etc/oraInst.loc和oratab這兩個檔案(hp是/var/opt/oracle)

而在oraInst.loc裡面定義了inventory_loc的位置和inst_group,由於之前裝過了一個11g,裡面的定義都是針對11g使用者佈建的,所以才會報錯。解決辦法是執行runInstaller -invPtrLoc /oracle10g/oraInst.loc 命令就可以繞過去了,oracle會建立一個新的loc檔案。

   上一步成功通過之後,緊接著報了下面的錯:

Exception java.lang.UnsatisfiedLinkError: /tmp/OraInstall2007-08-30_02-16-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/OraInstall2007-08-30_02-16-11PM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory

在RHEL5以前這個錯誤是因為缺少XFree86-libs或xorg-x11-deprecated-libs這兩個包其中一個(版本不同包不同),而在RHEL5中前面的包被libXp所取代了,因此rpm -ivh libXp-1.0.0-8.i386.rpm將包打上後問題解決。之後一切順利。

 

案例二:

參考 http://moto.debian.org.tw/viewtopic.php?t=8055&sid=eb2524337903c5af7ce1e839e0a35b68
進行前期的安裝準備
在開始安裝時出現以下錯誤:

對於error while loading shared libraries: libstdc++-libc6.1-1.so.2
我的解決辦法是
ln -s libstdc++-libc6.2-2.so.3 libstdc++-libc6.1-1.so.2
對於
Exception :java.lang.UnsatisfiedLinkError:/usr/java/j2sdk1.4.2_06/jre/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory
的解決辦法是
apt-get install libXp.so.6
apt-get install libXt.so.6
apt-get install libxtst6

 

案例三:

在RH Linux7.3上使用JasperReport作為報表引擎時,碰到了一樣的問題:
Exception :java.lang.UnsatisfiedLinkError:/usr/java/j2sdk1.4.2_06/jre/lib/i386/libawt.so: libXt.so.6: cannot open shared object file: No such file or directory

在各位前面回複的提示下,經過一上午的google,終於得以解決這個問題
原因是:缺少支援列印的圖形化動態連結程式庫libXp.so.6(也許還有相關的其他庫)
解決辦法:下載並安裝XFree86-libs-4.2.0-8.i386.rpm,/usr/X11R6/lib下就會出現需要的libXp.so.6.2

附上XFree86-libs-4.2.0-8.i386.rpm的一個:
http://www.cnblogs.com/gergro/admin/ftp://ftp.nluug.nl/vol/1/schoollan/os/linux/RPMS/XFree86-libs-4.2.0-8.i386.rpm

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.