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
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,防止出現亂碼。
# 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做爲系統服務,隨系統啓動等等。