Oracle 9i 在Linux 下的安裝 (上)
2024-08-29 13:39:54
供稿:網友
Oracle9i 2000 年 10 月在 Oracle Open World 上發布,為 Oracle 數據庫、應用服務器和開發工具引進了許多新功能。Oracle9i是業界第一個完整、簡單的用于互聯網的新一代智能化的、協作各種應用的軟件基礎架構。 Oracle9i 實際上是指 Oracle9i Database, Oracle9i application Server 和Oracle9i Developer Suite的完整集成。隨著軟件逐漸開始轉變為一種托管服務( hosted services), 具有internet上的高伸縮性能的、智能化的、和可靠的Oracle9i 將成為高質量的電子商務服務實現的要害軟件。
本文將介紹Oracle Database 9i在linux下的安裝過程,假如你是有過安裝Oracle的經驗本安裝過程可以權當快速安裝手冊;假如你以前從未在Linux下安裝過Oracle數據庫,那我們就從這篇文章開始熟悉oracle的安裝過程。
系統要求:
以下的系統要求適用于典型的Oracle安裝和創建簡單數據庫的方式。
內存:
安裝Oralce 9i軟件至少需要512M內存,用以下命令可以查看機子的內存大小:
grep MemTotal /PRoc/meminfo
MemTotal: 900252 kB
900252kB就是你系統的內存大小。
交換區:
交換區的大小一般要求是內存的兩倍,至少要求達到400M以上,當然是越大越好,用以下的命令可以查看系統交換區的大小:
/sbin/swapon -s
Filename Type Size Used Priority
/dev/sda6 partition 105221 686976 -1
其中105221就是系統交換區的大小。
光驅:
假如你使用光盤安裝Oracle9i則你的機子上需要8速以上的CDROM,假如你是下載了oracle9i的包文件,則不需要使用的CDROM。
硬盤空間:
安裝Oracle9i數據庫至少要有2.5GB以上的剩余空間。
臨時硬盤空間:
Oracle安裝程序在安裝過程中需要400M以上的臨時硬盤空間,建議使用/tmp文件夾作為零時文件夾,假如/tmp文件沒有足夠的硬盤,可以新創建一個文件夾作為安裝的臨時目錄,之后設置環境變量TEMP和TMPDIR指向相應的位置,例如:
使用bash
mkdir /home/temp
TEMP=/home/temp ; eXPort TEMP
TMPDIR=/home/temp ; export TMPDIR
使用csh
mkdir /home/temp
setenv TEMP /home/temp
setenv TMPDIR /home/temp
操作系統:
Oracle公司官方公布的資料指出Oracle 9i只在安裝SuSuSe 7.1, 內核 2.4.4 和glibc2.2的系統上測試通過,經過本人的測試,Oracle在Linux Mandrake release 8.0,內核2.4.3-20和glibc-2.2.2的版本上也可以順利安裝,本文將以Linux Mandrake8.0為例介紹Oracle9i的安裝過程。
虛擬x-windows軟件:
這個軟件不是必要的!所謂虛擬x-windows軟件指的是可在遠程終端答應服務器x-windows的虛擬軟件,現在流行的x-windows軟件有exceed、x-win32等軟件,假如你嫌在控制臺安裝oracle系統麻煩,可以使用虛擬x-windows軟件在遠程終端在圖形界面下安裝oralce9i,本文將以x-win32 5.0為例介紹用虛擬x-windows安裝oracle9i的過程。
JDK
假如你要安裝Oracle HTTP Server還需要用到blackdown的JDK1.3.1,請到以下地址下載FTP://ftp.progsoc.uts.edu.au/pub/Linux/java/JDK-1.3.0/i386/rc1/j2sdk-1.3.0-RC1-linux-i386.tar.bz2
配置內核參數
oracle9i使用Linux的共享內存、交換區等資源進行工作,假如你的內核參數設置不能滿足oracle的要求,那在安裝oracel9i或使用過程就會頻頻出現問題,因此配置系統內核的參數就顯得尤為重要和要害了。
內核參數的配置一般在/proc文件夾下配置:
1. 以root用戶答應以下命令;
2. 進入目錄/proc/sys/kernel;
3. 用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
添加用戶
Oracle在安裝和使用中需要用特定用戶(非root用戶),按照oracle的標準說明是需要添加三個專門用戶和用戶組,為了簡便大家的安裝和使用我們把oracle的安裝和使用歸到一個特定用戶來完成。
首先創建oracle用戶組,我們架設這個用戶組命名為dba:
以root用戶登陸系統;
運行groupadd dba命令添加dba用戶組;
添加oracle用戶:
以root用戶登陸系統;
運行useradd –g dba –p passWord –d /oracle –s /bin/bash oracle
運行后系統創建了一個屬于dba用戶組的用戶oracle,密碼為password,主目錄為/oracle使用bash
這個用戶將作為系統的安裝和使用指定用戶,因此要妥善保存好!
創建安裝點(mount point)
oracle9i的典型安裝需要至少兩個安裝點:一個安裝基本的運行程序,要求至少要有850M的硬盤空間;一個為存放數據庫,至少要求有450M的硬盤空間。為了簡化安裝我們可以把運行程序和數據庫裝在同一個安裝點下。
在你的文件系統上找到有足夠空間的分區,在分區下創建文件夾,我們假設這個文件夾為/oracle。
配置系統環境變量
很多網友安裝oracle失敗都是因為環境變量沒有配置正確,環境變量的配置直接影響到以后oracle9i的安裝和配置,在配置的時候要尤為小心!
配置x-windows變量
確認oracle9i在安裝過程中是否使用本地x-windows安裝還是遠程虛擬x-windows安裝,假如需要遠程x-windows安裝,則需要配置DISPLAY變量,這個變量用于告訴系統屏幕的圖形將輸出到什么位置,默認情況下是本機,假如你使用虛擬x-windows進行安裝,則在這里指明遠程終端的顯示情況,比如你遠程終端的ip地址是xxx.xxx.xxx.xxx則DISPLAY的變量應設為“xxx.xxx.xxx.xxx:0”后面的“:0”表示該終端的第一個顯示器。
確定安裝臨時目錄
前面我們提到過oracle9i的安裝需要一個臨時的可寫空間,我們在這里把/tmp作為臨時的可寫目錄。假如你不是使用/tmp作為臨時可寫目錄則需要配置相應的值TMPDIR=/path。
配置oracle的環境變量
下面提供一個例子可以供大家參照使用
export DISPLAY="192.9.200.24:0.0"
export BASH_ENV=$HOME/.bashrc
ORACLE_HOME=/oracle/prodUCt/9.0.1; export ORACLE_HOME
ORACLE_SID=oracle; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
TNS_ADMIN=/home/oracle/config/9.0.1; export TNS_ADMIN
NLS_LANG=american_america.ZHS16GBK; export NLS_LANG
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
LD_LIBRARY_PATH=$ORACLE_HOME/lib;export LD_LIBRARY_PATH
PATH=$PATH:/bin:/usr/bin:/usr/sbin:/etc:/opt/bin:
/usr/ccs/bin:/usr/openwin
PATH=$PATH:/opt/local/bin:/opt/NSCPnav/bin:$ORACLE_HOME/bin
PATH=$PATH:/usr/local/samba/bin:/usr/ucb:
export PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:
$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
TMPDIR=/tmp;export TMPDIR
umask 022
其中:
ORACLE_HOME為系統軟件的安裝目錄;
ORACLE_SID 為數據庫的SID,這里可以自行設置;
NLS_LANG 為數據庫的字符集,為了保證數據庫能夠輸出輸入數據庫,我們需要在這里把字符集設為american_america.ZHS16GBK,其中american_america英文字符集,ZHS16GBK為中文字符集。
以oracle用戶登陸系統,
vi $HOME/.bash_profile
把以上環境變量的設置粘貼到文件中,確認相應的內容并修改,存盤退出。
重新登陸oracle用戶
使用setmore命令查看oracle用戶的環境變量是否生效
CLASSPATH=/oracle/product/9.0.1/JRE:/oracle/product/9.0.1/jlib:
/oracle/product/9.0.1/rdbms/jlib:
/oracle/product/9.0.1/network/jlib
DISPLAY=192.9.200.24:0.0
LD_LIBRARY_PATH=/oracle/product/9.0.1/lib:/lib:/usr/lib:
NLS_LANG=american_america.ZHS16GBK
ORACLE_HOME=/oracle/product/9.0.1
ORACLE_SID=oracle
ORACLE_TERM=xterm
ORA_NLS33=/oracle/product/9.0.1/ocommon/nls/admin/data
OSTYPE=linux-gnu
PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games:
/bin:/usr/bin:/usr/sbin:/etc:/opt/bin:/usr/ccs/bin:/usr/openwin:
/opt/local/bin:/opt/NSCPnav/bin:
/oracle/product/9.0.1/bin:/usr/local/samba/bin:/usr/ucb:
TNS_ADMIN=/home/oracle/config/9.0.1