2009年12月11日 星期五

在CENTOS5.4安裝ORACLE11GR2

本篇主要是參照以下兩篇文章與其他網路文章加以修改而成:

http://forum.icst.org.tw/phpbb/viewtopic.php?f=21&t=16411&start=0&sid=866700eee479d130d126967c3160e7f4

http://www.oracle.com/technology/pub/articles/smiley-11gr1-install.html

1. 先裝好CentOS5.4

注意:

A.記得裝好後要先關閉SELinux

B. oracle 需要有1G以上的實體記憶體(VM中建議1100MB)

C. 建議2GB(或2倍以上的實體記憶體)的SWAP空間

D.安裝必須套件 (這全部是同一行)

[root@oracle ~]# yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

以及

[root@oracle ~]#yum install pdksh-5.2.14

E.由於考量日後還要繼續新增ORACLE的database大小

所以建議主硬碟為10G + 2G的SWAP +1G實體記憶體(建議是1100MB)

用VM時,假設掛載上的硬碟為/dev/sdb , 掛載目錄設為 /u01

掛載方法請參照筆者網誌上的另一篇文章.

F.建立oracle帳戶, 使用第二步驟建立, 此帳戶將用來開啟與管理ORACLE所有設定(不一定要給予ROOT權限)

G.下載下來的oracle安裝檔,必須解壓縮在同一目錄, 如:

unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
cd database
./runInstall

2.用root執行

# groupadd oinstall (建立oinstall 群組,安裝程序那邊會用到)
# groupadd dba (建立dba群組,安裝程序那邊會用到)

# useradd -g oinstall -G dba oracle
# passwd oracle

# mkdir -p /u01/app/oracle/product/

為了使以上的設定變更到另一磁碟, ex: /dev/sdb, 請先將/dev/sdb掛載成/u01

# chown oracle:oinstall /u01/app/oracle (之後軟體安裝的路徑)

#mkdir -p /u01/app/oracle/product/

#chmod -R 775 /u01

把/u01給oracle使用

#chown -R oracle:oinstall /u01

(這段要執行, 不然之後安裝程序要回來改權限)

3. 改用oracle登入, 這邊是希望之後以oracle就執行與管理這項服務, 不要被其他帳戶混淆.(盡可能由單一用戶執行單一服務, 也盡量不要用root開啟服務)

並改寫oracle 的 .bash_profile 部分如下

export JAVA_HOME=/opt/jdk1.6.0_17
export ORACLE_BASE=/u01/app/oracle
export ORACLE_SID=orcl
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
#NLS_LANG=”TRADITIONAL CHINESE_TAIWAN”.ZHT16BIG5;export NLS_LANG
export NLS_LANG
#LC_CTYPE=zh_TW.Big5; export LC_CTYPE
export LC_CTYPE
#LC_ALL=zh_TW.UTF8; export LC_ALL
export LC_ALL
#LANG=zh_TW.Big5; export LANG
export LANG
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export PATH=$JAVA_HOME/bin:$ORACLE_HOME/bin:$PATH:$HOME/bin

4.用root修改下面參數:

修改核心參數:

Add the following lines to /etc/sysctl.conf

32位元的設定

rnel.shmall=2097152
kernel.shmmax=552599552——half the size of physical memory(一半的記憶體, 以1gRAM來說, 會是552599552 )
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.core.rmem_default = 262144
net.core.wmem_default = 262144
fs.file-max = 6815744
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

64位元的

kernel.shmall=2097152
kernel.shmmax=552599552
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.core.rmem_default = 262144
net.core.wmem_default = 262144
fs.file-max = 6815744
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

讓設定生效, 改完核心參數之後, 一定要執行, 使設定生效!!!!

[root@oracle ~]# /sbin/sysctl –p

為oracle用戶設置Shell限制,

Add the following lines to /etc/security/limits.conf

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

修改/etc/pam.d/login

Add the following lines to /etc/pam.d/login

session required pam_limits.so

如果使用bash Shell,修改/etc/profile

Add the following lines to /etc/profile

if [ \$USER = "oracle" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi

5. 進入解壓縮後產生的database資料夾, 執行:

[oracle@oracle database]$ ./runInstaller

6.依照以下步驟開始安裝:

Step1:

Step2:

Step3:

Step4a: 這邊會改設定!!!請看下一張圖

Step4b:

注意為了日後編碼問題, 使用ALU32UTF8字元集

同時要注意,OSDBA群組為dba.

Step5:

在步驟五中, 要注意oraInventory群組名稱為: oinstall

Step8a:

Step8b:

Step8c:

Step9:

沒有留言: