一、安裝系統
首先安裝Linux系統,根據Oracle官方文檔的建議,在機器內存小于1G的情況下,swap分區大小應該設置為內存的2倍大,若內存大于2G則swap分區設置為與內存大小一樣。
為防止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 10201_database_linux32.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,防止出現亂碼。
# 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作為系統服務,隨系統啟動等等。
posted on 2012-09-21 16:49
kxbin 閱讀(2406)
評論(0) 編輯 收藏 所屬分類:
ORACLE 、
轉發 、
Linux