oracle9i在Red Hat Linux7.3上的安裝(轉)

PigBaby2007發表於2007-08-08
 本文將介紹Oracle Database 9i在Linux下的安裝過程,如果你是有過安裝Oracle8i的經驗,那麼以下的安裝過程對你來說是小事一樁:
  硬體要求:硬碟空間:安裝Oracle9i資料庫至少要有2.5GB以上的剩餘空間。 臨時硬碟空間:Oracle安裝程式在安裝過程中需要400M以上的臨時硬碟空間;記憶體:安裝Oralce 9i軟體至少需要512M記憶體(我個人安裝過程中使用的是256MB記憶體)。[@more@]


  
  1.Red Hat Linux 7.3:下載地點:
  
  2. Oracle9i:下載地點:
  (注:1.版本號9.2.0.1
  2.解壓辦法:以Linux9i_Disk1.cpio.gz為例.
  gunzipt Linux9i_Disk1.cpio.gz
  cpio –idmv < Linux9i_Disk2.cpio
  解包後形成三個目錄:installation files:
  Disk1 Disk2 Disk3 )
  
  3. binutils:7.3 自帶有nutils-2.11.90.0.8-9,但安裝的時候易出問題,建議下載binutils-2.10.0.18-1.i386.rpm下載地址:ftp://ftp.redhat.com/pub/redhat/lin...i386.rpm,以root 使用者安裝binutils:
  rpm -Uvh --force --nodeps binutils-2.10.0.18-1.i386.rpm oracle9i安裝完成後,將其版本還原:
  rpm -Uvh --force --nodeps binutils-2.11.90.0.8-9.i386.rpm
  
  4.JDK:下載地址:或
  安裝:bunzip2 -dc jdk118_v3-glibc-2.1.3.tar.bz2 tar xvf jdk118_v3-glibc-2.1.3.tar
  ln -s /usr/local/jdk118_v3 /usr/local/java
  注:.bz2檔案可使用winRAR解壓。
  
  5.配置核心引數
  oracle9i使用Linux的共享記憶體、交換區等資源進行工作,如果你的核心引數設定不能滿足oracle的要求,那在安裝oracel9i或使用過程就會頻頻出現問題,因此配置系統核心的引數就顯得尤為重要和關鍵了。核心引數的配置一般在/proc資料夾下配置:
  1). 以root使用者允許以下命令;
  2). 進入目錄/proc/sys/kernel;用cat命令或more命令檢視semaphore當前引數的值:
  cat sem
  命令執行後將會出現如下的結果:
  250 32000 32 128
  其中, 250 是引數SEMMSL的值,32000是引數SEMMNS的值, 32是引數SEMOPM的值,而128則是引數SEMMNI的值。
  4). 用以下的命令可以對上述引數進行修改
  echo SEMMSL_value SEMMNS_value SEMOPM_value SEMMNI_value > sem
  其中SEMMSL_value、SEMMNS_value、SEMOPM_value、SEMMNI_value分別用相應的值進行替換,並且這些值的順序不能調換
  5). 設定共享記憶體大小,共享記憶體大小一般設為實體記憶體的一半,在這裡我們假設實體記憶體為512M則共享記憶體的值4294967295以此類推,如果你的實體記憶體是1G則這裡的值則是8589934590:
  echo 4294967295 > shmmax
  
  6 新增使用者:Oracle在安裝和使用中需要用特定使用者(非root使用者),按照oracle的標準說明是需要新增三個專門使用者和使用者組,為了簡便大家的安裝和使用我們把oracle的安裝和使用歸到一個特定使用者來完成。
  首先建立oracle安裝組及使用者組,我們架設兩個使用者組命名為oinstall、dba:以root使用者登陸系統: 1)groupadd oinstall 2) groupadd dba
  新增oracle使用者:1)useradd oracle –g oinstall –G dba 2) password oracle
  
  7.建立安裝目錄:以 root使用者進行:
  mkdir /opt/oracle
  mkdir /opt/oracle/product
  mkdir /opt/oracle/product/9.0.1
  chown -R oracle.oinstall /opt/oracle
  mkdir /var/opt/oracle
  chown oracle.dba /var/opt/oracle
  chmod 755 /var/opt/oracle
  
  8.設定Oracle環境:以oracle使用者進行: vi /home/oracle/.bash_profile
  export ORACLE_BASE=/opt/oracle
  export ORACLE_HOME=/opt/oracle/product/9.0.1
  export ORACLE_SID=sah
  export ORACLE_TERM=xterm
  export NLS_LANG=AMERICAN;
  export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
  export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
  export PATH=$PATH:$ORACLE_HOME/bin;
  CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
  CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
  
  9 開始安裝
  1) cd /backup/Disk1 2) ./runInstaller
  安裝中出現問題的解決:一般依照錯誤提示進行即可,如果是因為binutils的問題,那麼一定是binutils的版本不對,建議安裝好binutils後再進行oracle9i安裝。oracle9i在安裝資料庫過程中,要求輸入sys及system使用者的密碼,你可隨意設定自己的密碼了。
  10.啟動資料庫:
  注意:svrmgrl 在9i中已經不支援,換作dgmgrl
  1) $dgmgrl 2)connect sys/xxxx as sysdba 3)startup
  (注:9i的提示和8i有所不同,僅兩行,這裡就不列出了)
  至此,oracle9i安裝完畢!
  
  Redhat7.3中Oracle9.2.0的第二次啟動失敗,字符集載入出問題了,請指教,急。
  安裝比較順利。資料庫的第一次啟動是建立資料庫時自動啟動的。
  當順利以normal方式shutdown資料庫後(用Enterprise management console中的Instance管理介面),滿懷信心的進行第二次啟動,資料庫在順利startup後,卻在mount過程中報錯:
  ORA-12709 error while loading create database character set
  我查了oracle9i系統文件,有關描述為:
  Cause: This is an internal error.
  Action: Contact Oracle Support Services.
  而我在前一段時間安裝oracle9.0.1(Redhat7.2)時也是同樣的問題,不知道是否是oracle的一個bug還是我的環境變數設定有問題。下面是我的.cshrc檔案描述:
  umask 022
  setenv ORACLE_BASE /home/oracle
  setenv ORACLE_HOME $ORACLE_BASE/release/9.2.0
  setenv ORACLE_SID optim
  setenv ORACLE_TERM xterm
  setenv TNS_ADMIN $ORACLE_BASE/config/9.2.0
  setenv NLS_LANG AMERICAN_AMERICA.ZHS16GBK
  setenv ORA_NLS33 /home/oracle/release/9.2.0/ocommon/nls/admin/data
  setenv LD_LIBRARY_PATH $ORACLE_HOME/lib
  setenv PATH /bin:/usr/dt/bin:/usr/local/java/bin:/usr/ccs/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin:$ORACLE_HOME/bin:$PATH
  setenv ORACLE_PATH $PATH
  setenv CLASSPATH $ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/jre/1.1.8/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
  setenv TMPDIR /tmp
  
  我建立資料庫時確實指明瞭字符集是ZHS16GBK,並且資料庫自動啟動後,我在伺服器端與客戶端都順利用sqlplus登陸資料庫,中文顯示沒有問題。
  
  請高手指點在下,不勝感激。
  下載i386-glibc-2.1-linux.tar.gz包並在根目錄下解壓,隱藏原有的gcc,ar,ld,將glibc中的相應檔案連線到/usr/bin下:
  #cd /
  #tar zxvf i386-glibc-2.1-linux.tar.gz
  #cd /usr/bin
  #mkdir saved
  #mv gcc ld ar saved
  #ln -s /usr/i386-glibc-2.1-linux/i386-glibc21-linux/bin/gcc gcc
  #ln -s /usr/i386-glibc-2.1-linux/i386-glibc21-linux/bin/ld ld
  #ln -s /usr/i386-glibc-2.1-linux/i386-glibc21-linux/bin/ar ar

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10144097/viewspace-934598/,如需轉載,請註明出處,否則將追究法律責任。

相關文章