一步步教你在RHEL AS 3安裝Oracle 10g
2024-08-29 13:36:31
供稿:網(wǎng)友
 
             
  不久前,Oracle(甲骨文)公司在美國加州的總部公布, Oracle 10g 數(shù)據(jù)庫 與 Oracle RAC 在 TPC-H 基準(zhǔn)測試中創(chuàng)造了新的世界紀(jì)錄.這是個令人震動的消息.因為這個測試是在 linux ( Red Hat EnterPRise Linux Advanced Server 3) 的平臺上進行的.這充分顯示了 Oracle 在低成本 Linux 集群服務(wù)器上高效治理大規(guī)模數(shù)據(jù)倉庫的能力, 也表明 Linux 在性能價格比上的優(yōu)勢,標(biāo)志著Linux在大規(guī)模企業(yè)應(yīng)用上已經(jīng)成熟. 
  
  相信很多朋友已經(jīng)對10g躍躍欲試了,現(xiàn)在從這里讓我們開始10g之旅. 
  
  本文描述了在Red Hat Enterprise Linux Advanced Server 3 (RHEL 3)上安裝Oracle 10g 必要的步驟和相關(guān)知識. 本文假定你的Linux 操作系統(tǒng)已經(jīng)安裝完畢,并且您應(yīng)該具有一定的 Unix 操作系統(tǒng)背景知識. 
  
  配置RedHat AS 3 
  操作系統(tǒng)版本:Red Hat Enterprise Linux AS release 3 (Taroon) 
         Kernel 2.4.21-4.EL on an i686 
  
  按照常規(guī)來安裝操作系統(tǒng),記得要安裝開發(fā)工具(gcc等必要工具). 
  
  
  必要的硬件信息檢查: 
  --------------------------------------------------------------------------------- 
  檢查內(nèi)容---- 最小值--------------------檢查命令參考 
  -------------------------------------------------------------------------------- 
  物理內(nèi)存---- 512M------- -------------# grep MemTotal /proc/meminfo 
  交換空間-----1.0 GB或者2倍內(nèi)存大小-# grep SwapTotal /proc/meminfo 
  /tmp 空間-- 400 MB-------------------# df -k /tmp 
  軟件所需空間-2.5 GB------------------# df -k (空間越大越好,假如是正式系統(tǒng),應(yīng)該進行詳盡的規(guī)劃) 
  數(shù)據(jù)庫文件---1.2 GB-------------------# df -k (空間越大越好,假如是正式系統(tǒng),應(yīng)該進行詳盡的規(guī)劃) 
  ------------------------------------------------------------------------------------- 
  
  
  檢查完如上各項之后, 應(yīng)該修改核心參數(shù).執(zhí)行如下命令: 
  
  #vi /etc/sysctl.conf 
  #注釋:#表示使用root用戶操作,$表示使用oracle 用戶進行操作.提示符后面的藍色部分表示需要輸入的命令,以下同. 
  
  在該文件末尾加入如下內(nèi)容: 
  
  #-----------Begin from here-------------------------------------- 
  kernel.shmall = 2097152 
  kernel.shmmax = 2147483648 
  kernel.shmmni = 4096 
  kernel.sem = 250 32000 100 128 
  fs.file-max = 65536 
  net.ipv4.ip_local_port_range = 1024 65000 
  #--------------End here-------------------------------------------- 
  
  編輯完之后,保存,執(zhí)行 # /sbin/sysctl -p 命令操作來使我們所做的變更生效. 
  
  注:上面kernel.shmmax/kernel.sem等是典型的核心參數(shù)配置.您可能需要根據(jù)您的實際環(huán)境進行適當(dāng)?shù)淖儎? 
  
  關(guān)于這些核心參數(shù)的說明在Oracle的Oracle9i Installation Guide Release 2 (9.2.0.1.0) for UNIX Systems 
  中有很具體的說明.( http://download-west.oracle.com/docs/Html/A96167_01/toc.htm ) 
  
  然后,應(yīng)該檢查一下上面的操作是否正確: 
  
  # /sbin/sysctl -a  grep sem 
  # /sbin/sysctl -a  grep shm 
  # /sbin/sysctl -a  grep file-max 
  # /sbin/sysctl -a  grep ip_local_port_range 
  
  
  為Oracle用戶設(shè)定Shell的限制 
  一般來說,出于性能上的考慮,還需要需要進行如下的設(shè)定,以便改進Oracle用戶的有關(guān) nofile(可打開的文件 
  描述符的最大數(shù))和nproc(單個用戶可用的最大進程數(shù)量) 
  
  # vi /etc/security/limits.conf 
  # 添加如下的行 
  
  * soft nproc 2047 
  * hard nproc 16384 
  * soft nofile 1024 
  * hard nofile 65536 
  
  添加如下的行到/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 
  之后,執(zhí)行$ unlimit 驗證一下.檢查并安裝相關(guān)補丁在這個版本的RHEL上安裝Oracle,必須要有幾個軟件包. 確認以下 rpm包都已經(jīng)安裝: 
  
  make-3.79 
  binutils-2.11 
  openmotif-2.2.2-16 
  setarch-1.3-1 
  compat-db-4.0.14.5 
  compat-gcc-7.3-2.96.122 
  compat-gcc-c++-7.3-2.96.122 
  compat-libstdc++-7.3-2.96.122 
  compat-libstdc++-devel-7.3-2.96.122 
  
  # rpm -qa  grep compat 
  # 在我的機器上輸出如下: 
  compat-gcc-c++-7.3-2.96.122 
  compat-libstdc++-7.3-2.96.122 
  compat-libstdc++-devel-7.3-2.96.122 
  compat-glibc-7.x-2.2.4.32.5 
  compat-db-4.0.14-5 
  compat-gcc-7.3-2.96.122 
  
  # rpm -qa  grep openmotif 
  openmotif-devel-2.2.2-16 
  openmotif-2.2.2-16 
  
  # rpm -qa  grep setarch 
  setarch-1.3-1 
  
  上面顯示的內(nèi)容是在筆者已經(jīng)安裝了具體的RPM包之后的結(jié)果.一般情況下,你的系統(tǒng)上的輸出結(jié)果和這個不同.假如個別包沒有安裝,把系統(tǒng)安裝光盤mount上,找到具體的軟件包(大多數(shù)在第三張光盤上),然后利用如下的命令來安裝相應(yīng)的包: 
  
  # rpm -ivh compat.....rpm 
  
  要額外注重的是,這些軟件包之間是有依靠性的,先后的順序要找好.否則會報告不能安裝的錯誤. 
  
  此外,最好驗證一下 gcc和glibc的版本(要求是gcc-3.2.3-2 或者更高) 
  
  #gcc -v 
  #rpm -q glibc 
  
  創(chuàng)建用戶和相關(guān)的組 
  
  # /usr/sbin/groupadd oinstall 
  # /usr/sbin/groupadd dba 
  # /usr/sbin/useradd -g oinstall -G dba oracle  
  
  假如只是測試目的的話,不創(chuàng)建oinstall組也沒什么. 不過還是規(guī)范一點比較好.假如oracle 用戶和dba組等已經(jīng)存在,作適當(dāng)?shù)恼{(diào)整即可. 
  
  檢查并調(diào)整環(huán)境變量 
  
  登錄為oracle用戶 
  # su – oracle 
  $ cd 
  $ vi .bash_profile 
  
  #添加如下內(nèi)容,你的具體值應(yīng)該不會和這個完全相同. 
  
  eXPort ORACLE_BASE=/u/app/oracle 
  export ORACLE_HOME=$ORACLE_BASE/prodUCt/10.1.0/db_1 
  export ORACLE_SID=TEST 
  export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin 
  export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib 
  export LC_CTYPE=en_US.UTF-8 
  
  然后執(zhí)行 
  $ source .bash_profile 
  使環(huán)境變量生效. /u/app/oracle 等目錄應(yīng)該建立好并做合適的授權(quán). 
  
  
  開始安裝10g 
  mount你的安裝盤.(我一般都是把文件拷貝到系統(tǒng)中一個具體的位置,比如/u/install ) . 執(zhí)行 
  
  $ sh /u/install/runInstaller 
  
  假如不能出現(xiàn)安裝畫面,查看本文后面的FAQ。
                          
  
  非常值得稱道的是,10g的安裝相比以前的多了一個 Checking Operating system certification 的步驟。非凡實用。安裝文件會自動檢測所需的條件。假如有不符合的地方,安裝程序會報告給你.并會給出具體原因。大大減少了出錯的可能.下面是檢查成功輸出的內(nèi)容 : 
  
  Checking operating system certification 
  Expected result: One of redhat-2.1,redhat-3,UnitedLinux-1.0 
  Actual Result: redhat-3 
  Check complete. The overall result of this check is: Passed 
  ======================================================================= 
  
  Checking kernel parameters 
  Checking for VERSION=2.4.9.25; found VERSION=2.4.21. Passed 
  Checking for shmall=2097152; found shmall=2097152. Passed 
  Checking for shmseg=10; found shmseg=4096. Passed 
  Checking for semmsl=250; found semmsl=250. Passed 
  Checking for semmni=128; found semmni=128. Passed 
  Checking for filemax=65536; found filemax=65536. Passed 
  Checking for shmmni=4096; found shmmni=4096. Passed 
  Checking for semmns=32000; found semmns=32000. Passed 
  Checking for semopm=100; found semopm=100.Passed 
  Checking for shmmin=1; found shmmin=1. Passed 
  Checking for shmmax=2147483648; found shmmax=2147483648. Passed 
  Check complete. The overall result of this check is: Passed 
  ======================================================================= 
  Checking recommended operating system packages 
  Checking for make-3.79; found make-3.79.1-17. Passed 
  Checking for binutils-2.11.90.0.8-12; found binutils-2.14.90.0.4-26. Passed 
  Checking for gcc-2.96; found gcc-3.2.3-20. Passed 
  Checking for openmotif-2.1.30-11; found openmotif-2.2.2-16. Passed 
  Check comple