RHEL6 64位ASM方式安裝oracle 11gR2(一)

一、安裝前的準備

二、安裝網格基礎架構

三、安裝數據庫軟件

四、創建監聽

五、創建數據庫實例


一、安裝前的準備

1.1 確定操作系統環境

# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.2 (Santiago)
# uname -a
Linux ora11g.vnimos.org 2.6.32-220.el6.x86_64 #1 SMP Wed Nov 9 08:03:13 EST 2011 x86_64 x86_64 x86_64 GNU/Linux
# free -m
             total       used       free     shared    buffers     cached
Mem:          2008       1309        699          0         62        875
-/+ buffers/cache:        371       1637
Swap:          509          0        509
# fdisk -l
Disk /dev/sda: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1           5       40131   83  Linux
/dev/sda2               6        2172    17406427+  8e  Linux LVM
/dev/sda3            2173        2237      522112+  82  Linux swap / Solaris
/dev/sda4            2238        3916    13486567+   5  Extended
/dev/sda5            2238        2542     2449881   83  Linux
/dev/sda6            2543        2847     2449881   83  Linux
/dev/sda7            2848        3152     2449881   83  Linux
/dev/sda8            3153        3457     2449881   83  Linux
/dev/sda9            3458        3765     3077120   83  Linux
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/Vol0-root
                      7.6G  3.2G  4.1G  41% /
/dev/mapper/Vol0-oracle
                      8.6G  101M  747M  1% /u01
/dev/sda1             38M   16M   21M  42% /boot
tmpfs                1005M     0 1005M   0% /dev/shm

如果沒有滿足1G內存的要求,雖然對安裝的影響也不是很大,但會在安裝正式開始前收到一個先決條件檢查不通過的友情警告信息。

Swap交換區大小與物理內存大小的比例關係的一般規律如下:

  • 如果物理內存在1G 2G 之間,Swap 分配大小建議是物理內存的1.5倍;

  • 如果物理內存在2G 16G 之間,Swap 建議與物理內存大小保持一致;

  • 如果物理內存在16G 以上,Swap 大小建議保證有16G即可。

這邊僅用於測試,故只分配了512M的swap空間,可以忽略警告信息。


因爲Oracle 11gR2中,ASM必須單獨安裝Grid Infrastructure,再加上數據庫軟件的安裝,所需要的磁盤大小一般不超過8G,所以應保證/u01目錄所在的文件系統可用空間在8G以上即可。

數據庫文件將採用ASM方式存儲,這裏用了42.5Graw分區用於活動的數據庫文件+DATA的ASM磁盤組13Graw分區用於閃回恢復區+FRA的ASM磁盤組

因爲在安裝過程中,有一部分數據會寫入到“/tmp”目錄下,建議該目錄所在的文件系統空間大小不要小於1G

1.2 網絡參數的配置

# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=ora11g.vnimos.org
# service NetworkManager stop
# chkconfig NetworkManager off
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:0C:29:32:C3:9C
IPADDR=192.168.0.90
NETMASK=255.255.255.0
ONBOOT=yes
# cat /etc/hosts
127.0.0.1       localhost.localdomain   localhost
192.168.0.90    ora11g.vnimos.org       ora11g
//必須至少包含以上兩行、三列(IP 長名 短名),否則安裝的時候將會出現”Oracle Net Configuration Assistant failed”的錯誤


1.3 oracle用戶環境變量、系統參數的配置

# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba,root oracle
# echo "oracle" | passwd --stdin oracle
# mkdir -p /u01/app/{oracle,oraInventory}
# chown oracle:oinstall /u01/app/oracle
# chown oracle:oinstall /u01/app/oraInventory
# vi /home/oracle/.bash_profile
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/X11R6/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/rdbms/lib
export CLASS_PATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib
export CLASS_PATH=$CLASS_PATH:$ORACLE_HOME/rdbms/jlib
export CLASS_PATH=$CLASS_PATH:$ORACLE_HOME/network/jlib
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=american_america.AL32UTF8
export ORACLE_TERM=xterm
export EDITOR=vi
export PATH=$ORACLE_HOME/bin:$PATH
export LANG=en_US
# vi /etc/sysctl.conf
kernel.shmmax = 1073741824                     //物理內存的一半(字節)
# sysctl -p


1.4 綁定裸設備(用於創建ASM磁盤組,更詳細的內容請參考:http://vnimos.blog.51cto.com/2014866/1220666

# fdisk -l
Disk /dev/sda: 32.2 GB, 32212254720 bytes
255 heads, 63 sectors/track, 3916 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1           5       40131   83  Linux
/dev/sda2               6        2172    17406427+  8e  Linux LVM
/dev/sda3            2173        2237      522112+  82  Linux swap / Solaris
/dev/sda4            2238        3916    13486567+   5  Extended
/dev/sda5            2238        2542     2449881   83  Linux
/dev/sda6            2543        2847     2449881   83  Linux
/dev/sda7            2848        3152     2449881   83  Linux
/dev/sda8            3153        3457     2449881   83  Linux
/dev/sda9            3458        3916     3686886   83  Linux
# vi /etc/sysconfig/rawdevices
/dev/raw/raw5  /dev/sda5
/dev/raw/raw6  /dev/sda6
/dev/raw/raw7  /dev/sda7
/dev/raw/raw8  /dev/sda8
/dev/raw/raw9  /dev/sda9
# chmod +x /etc/rc.d/init.d/rawdevices
# chkconfig --add rawdevices
# chkconfig rawdevices on
# service rawdevices start
Assigning devices:
           /dev/raw/raw5  -->   /dev/sda5
/dev/raw/raw5: bound to major 8, minor 5
           /dev/raw/raw6  -->   /dev/sda6
/dev/raw/raw6: bound to major 8, minor 6
           /dev/raw/raw7  -->   /dev/sda7
/dev/raw/raw7: bound to major 8, minor 7
           /dev/raw/raw8  -->   /dev/sda8
/dev/raw/raw8: bound to major 8, minor 8
           /dev/raw/raw9  -->   /dev/sda9
/dev/raw/raw9: bound to major 8, minor 9
done
# raw -qa
/dev/raw/raw5: bound to major 8, minor 5
/dev/raw/raw6: bound to major 8, minor 6
/dev/raw/raw7: bound to major 8, minor 7
/dev/raw/raw8: bound to major 8, minor 8
/dev/raw/raw9: bound to major 8, minor 9

二、 安裝網格基礎架構(Grid Infrastructure)

2.1 安裝grid

Oracle 11gR2的安裝界面跟之前版本比較起來有很大的不同,整體界面更加清新,更加簡潔了,新增了fixup腳本,在安裝過程中,安裝程序將會檢查推薦的操作系統內核參數設置以及必須的軟件包,對於不符合要求的部分將會自動生成runfixup.sh,只需要手動以root用戶執行該腳本即可,不需要手動調整相關的系統參數配置了。

# rpm -ivh pdksh-5.2.14-37.el5.x86_64.rpm          //RHEL6光盤默認沒有該軟件包,可直接安裝RHEL5的rpm軟件包
# yum -y install binutils compat-libstdc++ 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 "compat*"
//以上的軟件必須包含32位的軟件包,否則如果缺少,可能在安裝大約到65%,開始編譯的時候出現"Error in invoking target 'all_no_orcl' of makefile"的錯誤
# unzip -d /stage/ linux.x64_11gR2_grid.zip
# chown -R oracle.oinstall /stage/grid
# xhost +
access control disabled, clients can connect from any host
# su - oracle
$ cd /stage/grid/
$ ./runInstaller

1. 爲一臺獨立的服務器安裝並配置網格基礎架構:

2.選擇支持的語言:

3. 創建ASM磁盤組(冗餘類型High:雙鏡像Normal:單鏡像[默認], External:不做冗餘)

4. 爲賬戶創建統一的ASM密碼:oracle_4U

5. 選擇特權操作系統組:dba (忽略告警:Yes)

6. 定義安裝位置(修改SoftwareLocation:/u01/app/oracle/product/11.2.0/grid )

7. 定義Inventory位置

8. 執行先決條件檢查

根據提示安裝好缺少的軟件包(圖中所提示的軟件包由於已安裝了更高版本了,所以可以忽視警告)

# yum -y install "libaio*" "libaio-devel*" "libgcc*" "libstdc++*" "unixODBC*" "unixODBC-devel*"

選擇Fix & Check Again (根據提示框以root身份登錄shell,執行完/tmp/CVU_11.2.0.1.0_oracle/runfixup.sh腳本,返回窗口點擊OK)


$ su - root

# /tmp/CVU_11.2.0.1.0_oracle/runfixup.sh

勾選忽略所有,直接進入下一步

9. 確認安裝概要


10. 開始安裝

10.1 root身份執行以下兩條腳本

如果執行腳本的時候停在Adding daemon to inittab,這是 11.2.0.1和11.2.0.2 RHEL6上的bug,可以以root身份執行以下命令:

# dd if=/var/tmp/.oracle/npohasd of=/dev/null bs=1024 count=1

10.2 繼續安裝

11. 安裝完成

2.2 創建FRA磁盤組(Fast Recovery Area)

$ . oraenv
ORACLE_SID = [orcl] ? +ASM
The Oracle base for ORACLE_HOME=/u01/app/oracle/product/11.2.0/grid is /u01/app/oracle
$ env | grep SID
ORACLE_SID=+ASM
$ asmca


2.3 安裝後的檢查、配置

檢查是否正確安裝:
$ . oraenv
ORACLE_SID = [orcl] ? +ASM
The Oracle base for ORACLE_HOME=/u01/app/oracle/product/11.2.0/grid is /u01/app/oracle
$ echo $ORACLE_SID
+ASM
$ ./crsctl check has
CRS-4638: Oracle High Availability Services is online
$ ./crs_stat -t
Name           Type           Target    State     Host
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    ONLINE    ora11g
ora.FRA.dg     ora....up.type ONLINE    ONLINE    ora11g
ora.asm        ora.asm.type   ONLINE    ONLINE    ora11g
ora.cssd       ora.cssd.type  ONLINE    ONLINE    ora11g
ora.diskmon    ora....on.type ONLINE    ONLINE    ora11g
設置開機自動啓動crs:
# tail -n 1 /etc/inittab                           //安裝完成默認會向inittab文件添加該記錄
h1:35:respawn:/etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null
# cat >> /etc/rc.local <<EOF                       //RHEL6必須手動添加該記錄
/etc/init.d/init.ohasd run >/dev/null 2>&1 </dev/null &
EOF


2.4 卸載、重裝

如果grid安裝失敗,需要卸載乾淨才能重新安裝,否則仍然安裝不成功。

#rm -rf /etc/ora*
#vi /etc/inittab
h1:35:respawn:/etc/init.d/init.ohasdrun >/dev/null 2>&1 </dev/null            //刪除此行
#rm -rf /u01/app/oracle/product/11.2.0/grid/                               //刪除grid的安裝文件
# for i in {5..9} ;do dd if=/dev/zero of=/dev/raw/raw$i bs=1024 count=10 ;done //低格裸設備(清除ASM磁盤組信息)


未完,後續請見:RHEL6 ASM方式安裝oracle 11gR2(二)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章