linux5.2上安裝oracle10g

taotao_number1發表於2009-04-01
Red Hat Enterprise Linux 5(32Bit/64Bit)安裝Oracle(10g/11g)
作者:不詳  來源:中國自學程式設計網整理髮布  釋出日期:2008-11-26  

一、安裝系統
首先安裝Linux系統,根據Oracle官方文件的建議,在機器記憶體小於1G的情況下,swap分割槽大小應該設定為記憶體的2倍大,若記憶體大於2G則swap分割槽設定為與記憶體大小一樣。
其實Linux系統的swap分割槽大小設定是很有講究的,如果哪位讀者有興趣,可以參考我的另外一篇文章——《如何合理設定Linux系統的swap分割槽大小》。
在系統安裝的過程中,一定選擇安裝所有開發包,建議不要安裝SELinux或者安裝後在系統中禁止SELinux執行,否則會出現一些莫名其妙的問題。
為防止Oracle安裝過程中出現亂碼,建議使用英文作為系統語言,進行Oracle的安裝工作
二、安裝Oracle前的系統準備工作
1.檢查需要的軟體包
可以使用rpm -qa|grep 軟體包關鍵詞命令進行檢測,一般情況下會需要手動安裝如下的軟體包:
From RedHat AS5 Disk 1(32 Bit)
# rpm -Uvh setarch-2*
# rpm -Uvh make-3*
# rpm -Uvh glibc-2*
# rpm -Uvh libaio-0*
From RedHat AS5 Disk 2(32 Bit)
# rpm -Uvh compat-libstdc -33-3*
# rpm -Uvh compat-gcc-34-3*
# rpm -Uvh compat-gcc-34-c -3*
# rpm -Uvh gcc-4*
# rpm -Uvh libXp-1*
From RedHat AS5 Disk 3(32 Bit)
# rpm -Uvh openmotif-2*
# rpm -Uvh compat-db-4*
如果使用DVD安裝介質的話,會很方便。
2.修改Linux發行版本資訊
由於Oracle 10g發行的時候,RedHat Enterprise Linux 5沒有發行,所以Oracle 10g並沒有對RedHat Enterprise Linux 5確認支援,我們有兩種方法可以讓Oracle 10g支援RedHat Enterprise Linux 5。
方法一:
我們需要手工修改Linux的發行註記,讓Oracle 10g支援RedHat Enterprise Linux 5。
編輯/etc/redhat-release檔案
# vi /etc/redhat-release
將其中的內容Red Hat Enterprise Linux Server release 5 (Tikanga)修改為Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
方法二:
還有文章說修改Oracle安裝包中install/oraparam.ini檔案的內容,也可以讓Oracle 10g支援RedHat Enterprise Linux 5,修改方法如下:
# vi install/oraparam.ini
在其中的Certified Versions段落增加redhat-5
#[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
經我測試,發現方法二在安裝之前的系統檢測過程可以通過,但是在安裝過程中的系統支援檢測無法通過,不知道是不是我設定的有問題,希望有高手可以給我點提示。
3.修改系統核心引數
# vi /etc/sysctl.conf
kernel.shmall = 2097152 // 該參數列示系統一次可以使用的共享記憶體總量(以頁為單位)。預設值就是2097152,通常不需要修改kernel.shmmax = 2147483648 // 該引數定義了共享記憶體段的最大尺寸(以位元組為單位)。預設為32M,對於oracle來說,該預設值太低了,通常將其設定為2G
kernel.shmmni = 4096 // 這個核心引數用於設定系統範圍內共享記憶體段的最大數量。該引數的預設值是 4096 。通常不需要更改
kernel.sem = 250 32000 100 128 // 表示設定的訊號量
fs.file-max = 65536 // 表示檔案控制程式碼的最大數量。檔案控制程式碼設定表示在linux系統中可以開啟的檔案數量
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144 // 預設的接收視窗大小
net.core.rmem_max=262144 // 接收視窗的最大大小
net.core.wmem_default=262144 // 預設的傳送視窗大小
net.core.wmem_max=262144 // 傳送視窗的最大大小
修改好核心引數後,執行如下命令使新的設定生效
# /sbin/sysctl -p
4.建立Oracle使用者、組、安裝目錄
在這裡我只討論單主機環境,不考慮RAC環境的配置,在以後我會專門寫一篇如何配置Oracle RAC環境的文章。
(1) 建立Oracle使用者組
# groupadd oinstall
# groupadd dba
(2) 建立Oracle使用者
# useradd -m -g oinstall -G dba oracle
(3) 設定Oracle使用者口令
# passwd oracle
(4) 建立Oracle安裝目錄以及資料存放目錄
# mkdir -p /DBSoftware/app/oracle
# mkdir -p /DBData/oradata
(5) 修改目錄許可權
# chown -R oracle:oinstall /DBSoftware/app/oracle/ /DBData/oradata/
# chmod -R 755 /DBSoftware/app/oracle/ /DBData/oradata/
5.新增以下內容到/etc/security/limits.conf
# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
6.新增以下內容到/etc/pam.d/login
# vi /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so
7.新增以下內容到/etc/profile
# vi /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
8.配置Linux主機
檢查/etc/hosts檔案中是否有localhost的記錄(指向127.0.0.1即可),若沒有的話,在後面配置Oracle監聽的時候會出現一些問題,導致無法啟動監聽,在此手工新增此記錄即可。
9.配置oracle使用者環境變數
# su - oracle
$ vi ~/.bash_profile
增加如下內容:
export ORACLE_BASE=/DBSoftware/app/oracle // 上面建立的Oracle安裝資料夾
export ORACLE_SID=orcl
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBARY_PATH=$ORACLE_HOME/lib
export PATH
umask 022
儲存後使用如下命令,使設定生效:
$ source ~/.bash_profile
三、安裝Oracle,並進行相關設定

1.解壓縮安裝檔案
Oracle的安裝包有這樣幾種格式:
(1) zip
這種格式最好解壓縮,直接使用命令unzip 檔名即可
(2) cpio.gz
這種格式有這樣幾種解壓縮方式
a. # zcat XXXX.cpio.gz | cpio -idmv
b. # gunzip XXXX.cpio.gz解壓出XXXX.cpio檔案然後再 # cpio -idvm < XXXX.cpio
解壓縮完成後,設定oracle帳戶可以操作安裝檔案所在的目錄
chown -R oracle:oinstall 安裝檔案所在目錄
2. 用oracle帳戶進入安裝檔案所在目錄,執行如下命令即可看到安裝介面:
$ ./runInstaller
如果無法看到安裝介面,請使用root帳戶執行如下命令後再執行安裝程式:
# export DISPLAY=:0.0
# xhost +
$ ./runInstaller
出現安裝介面後,根據介面提示進行相關的設定,我的建議是在安裝過程中不建立資料庫,只安裝程式,監聽和建立資料庫等安裝完成後再進行相關的操作。
安裝過程中,需要使用root許可權執行兩個指令碼。
3. 安裝完成後,將/etc/redhat-release檔案中的內容修改回Red Hat Enterprise Linux Server release 5 (Tikanga)
4.建立監聽以及建立資料庫
(1) 建立監聽程式
使用Oracle提供的NET CONFIGURATION ASSISTANT建立TNS監聽
$ netca
基本上就是一直Next就可以了,當然你也可以在這期間修改TNS的監聽埠號
TNS監聽建立完成後可以使用如下命令進行檢查:
# netstat -atln 檢查監聽埠是否開啟
$ lsnrctl status 檢查TNS監聽狀態
確認監聽已經成功啟動後,即可執行Database Configure Assistant進行資料庫的建立,執行命令如下:
$ dbca
在建立資料庫的過程中,建議將資料庫的字符集設定為Unicode UTF-8,防止出現亂碼。
四、資料庫的啟動指令碼(轉載自http://82584.blog.違規廣告.com/72584/110131)
# vi /etc/rc.d/init.d/oracle
================================ Script. File Start ================================

#!/bin/bash
#
# chkconfig: 35 95 1
# description: init script. to start/stop oracle database 10g, TNS listener, EMS
# match these values to your environment:
export ORACLE_BASE=/DBSoftware/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export PATH=/u01/app/oracle/bin:$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orcl
export ORACLE_USER=oracle
# see how we are called:
case $1 in
start)
su - "$ORACLE_USER"<<EOO
lsnrctl start
sqlplus /nolog<<EOS
connect / as sysdba
startup
EOS
emctl start dbconsole
EOO
touch /var/lock/subsys/$scriptname
;;
stop)
su - "$ORACLE_USER"<<EOO
lsnrctl stop
sqlplus /nolog<<EOS
connect / as sysdba
shutdown immediate
EOS
emctl stop dbconsole
EOO
rm -f /var/lock/subsys/scriptname
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
================================ Script. File End ================================
授權 :chown root.root /etc/rc.d/init.d/oracle
修改檔案屬性:chmod 755 /etc/rc.d/init.d/oracle
以後啟動/關閉Oracle可以使用如下命令操作:
# service oracle start // 啟動監聽、資料庫以及em
# service oracle stop // 關閉監聽、資料庫以及em
當然你也可以把Oracle作為系統服務,隨系統啟動等


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

相關文章