首页 > 数据库 > Oracle > 利用VMWARE實現RAC的安裝與配置
版本﹕oracle 9i(9.2.0.4)
環境﹕安裝虛擬機的操作系統﹕ WINDOWS 2000 PRO 內存﹕512M
二個虛擬機內安裝的系統﹕RHLinux 2.4.21-15.EL 內存﹕各分配200M
虛擬磁盤﹕各9G 共享磁盤﹕1.5G
SGA﹕各分配80M﹐滿足最小要求
虛擬機的配置﹕
1﹑按常規安裝好虛擬機﹐這里的版本是﹕GSX SERVER 3.2.0 GUILD 14497
2﹑在安裝好的虛擬機上虛擬二個操作系統﹕LINUX---RHLinux 2.4.21-15.EL
主機名﹕RAC26 IP﹕172.17.23.26 192.168.0.1 --安裝二塊虛擬網卡
RAC49 IP﹕172.17.32.49 192.168.0.2
3﹑為二個系統做好共享設置﹕
A)先在任意一個系統上創建一個新的虛擬硬盤
B)在另外一個系統上也創建一個新的虛擬硬盤﹐只是這個是利用前一個已經創建好的虛擬硬盤。
C)做好虛擬的共享配置﹕在二個系統的虛擬配置文件中都要加入以下同行
rhel3.vmx:
diskLib.dataCacheMaxSize= "0"
diskLib.dataCacheMaxReadAheadSize= "0"
diskLib.DataCacheMinReadAheadSize= "0"
diskLib.dataCachePageSize= "4096"
diskLib.maxUnsyncedWrites= "0"
disk.locking = FALSE
scsi1.sharedBus = "virtual"
scsi0:1.mode = "persistent"
scsi1:0.shared = "true"
scsi1:1.shared = "true"
4﹑為共享設配做RAW分區
[root@rac26 root]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
Command (m for help): p
Disk /dev/sdb: 1610 MB, 1610612736 bytes
255 heads, 63 sectors/track, 195 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-195, default 1): +10M
Last cylinder or +size or +sizeM or +sizeK (1-195, default 195): +10M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (3-195, default 3):
Using default value 3
Last cylinder or +size or +sizeM or +sizeK (3-195, default 195): +50M
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (10-195, default 10):
Using default value 10
Last cylinder or +size or +sizeM or +sizeK (10-195, default 195): +400M
Command (m for help): p
Disk /dev/sdb: 1610 MB, 1610612736 bytes
255 heads, 63 sectors/track, 195 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 2 16033+ 83 Linux
/dev/sdb2 3 9 56227+ 83 Linux
/dev/sdb3 10 59 401625 83 Linux
......
按以上的方法﹐創建分區﹐創建好之后將會是如下﹕
[oracle@rac26 oracle]$ /sbin/fdisk -l /dev/sdb
Disk /dev/sdb: 1610 MB, 1610612736 bytes
255 heads, 63 sectors/track, 195 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 2 16033+ 83 Linux
/dev/sdb2 3 33 249007+ 83 Linux
/dev/sdb3 34 64 249007+ 83 Linux
/dev/sdb4 65 195 1052257+ 5 Extended
/dev/sdb5 65 101 297171 83 Linux
/dev/sdb6 102 104 24066 83 Linux
/dev/sdb7 105 107 24066 83 Linux
/dev/sdb8 108 110 24066 83 Linux
/dev/sdb9 111 113 24066 83 Linux
/dev/sdb10 114 116 24066 83 Linux
/dev/sdb11 117 119 24066 83 Linux
/dev/sdb12 120 122 24066 83 Linux
/dev/sdb13 123 129 56196 83 Linux
/dev/sdb14 130 195 530113+ 83 Linux
以上創建分區的動作只需在一個節點上進行。
以下裸設備的挂接必須在二個節點上進行
現在進行裸設置的挂接﹕
raw /dev/raw/raw1 /dev/sdb1 ---用于存放Cluster Manager Quorum文件
raw /dev/raw/raw2 /dev/sdb2 ---回滾段表空間
raw /dev/raw/raw3 /dev/sdb3 ---回滾段表空間
raw /dev/raw/raw4 /dev/sdb5 系統表空間
raw /dev/raw/raw5 /dev/sdb6 SPFILE
raw /dev/raw/raw6 /dev/sdb7 控制文件
raw /dev/raw/raw7 /dev/sdb8 控制文件
raw /dev/raw/raw8 /dev/sdb9 REDOFILE
raw /dev/raw/raw9 /dev/sdb10 REDOFILE
raw /dev/raw/raw10 /dev/sdb11 REDOFILE
raw /dev/raw/raw11 /dev/sdb12 REDOFILE
raw /dev/raw/raw12 /dev/sdb13 TEMP TABLESPACE
raw /dev/raw/raw13 /dev/sdb14 共享配置文件
為使在重啟時有效﹐做以下做動作﹕
[root@rac26 bin]# vi /etc/rc.local
raw /dev/raw/raw1 /dev/sdb1
raw /dev/raw/raw2 /dev/sdb2
raw /dev/raw/raw3 /dev/sdb3
raw /dev/raw/raw4 /dev/sdb5
raw /dev/raw/raw5 /dev/sdb6
raw /dev/raw/raw6 /dev/sdb7
raw /dev/raw/raw7 /dev/sdb8
raw /dev/raw/raw8 /dev/sdb9
raw /dev/raw/raw9 /dev/sdb10
raw /dev/raw/raw10 /dev/sdb11
raw /dev/raw/raw11 /dev/sdb12
raw /dev/raw/raw12 /dev/sdb13
raw /dev/raw/raw13 /dev/sdb14
保存退出
分別重新啟動二個節點﹐看裸設備是否挂接正常
[root@rac49 etc]raw -qa
更改裸設備的所有者為﹕oracle.dba --二個節點都進行
[root@rac49 etc]# chown oracle.dba /dev/raw/raw1
[root@rac49 etc]# chown oracle.dba /dev/raw/raw2
[root@rac49 etc]# chown oracle.dba /dev/raw/raw3
[root@rac49 etc]# chown oracle.dba /dev/raw/raw4
.....
[root@rac49 etc]# chown oracle.dba /dev/raw/raw13
生成的OCM管理文件﹐它必須在共享磁盤上﹕--以ORACLE用戶進行﹐只需在一個節點上進行
[oracle@rac26 root]#su - oracle
[oracle@rac26 oracle]$ dd if=/dev/zero of=/dev/raw/raw1 bs=1024 count=1024
1024+0 records in
1024+0 records out
5﹑為RAC26 RAC49 分別設置好環境變量﹕
A)設置TELNET,並可以遠程用ROOT登錄
[root@rac49 root]# cd /etc
[root@rac49 etc]# cd pam.d
[root@rac49 pam.d]# vi login
#%PAM-1.0
#auth required pam_securetty.so--將此行取消有效
auth required pam_stack.so service=system-auth
auth required pam_nologin.so
account required pam_stack.so service=system-auth
password required pam_stack.so service=system-auth
session required pam_stack.so service=system-auth
session optional pam_console.so
設置RLOGIN﹑RCP
RAC26﹕
[root@rac26 root]# ntsysv
*rlogin
*rsh
[root@rac26 root]# echo "rexec">>/etc/securetty
[root@rac26 root]# echo "rlogin">>/etc/securetty
[root@rac26 root]# echo "rsh">>/etc/securetty
[root@rac26 root]# more /etc/securetty
[root@rac26 root]# vi /etc/pam.d/rlogin
#%PAM-1.0
# For root login to succeed here with pam_securetty, "rlogin" must be
# listed in /etc/securetty.
auth required pam_nologin.so
#auth required pam_securetty.so
auth required pam_env.so
auth sufficient pam_rhosts_auth.so
auth required pam_stack.so service=system-auth
account required pam_stack.so service=system-auth
password required pam_stack.so service=system-auth
session required pam_stack.so service=system-auth
[root@rac26 root]# vi /etc/hosts.equiv
rac26
rac49
rac2601
rac4901
[root@rac26 root]# vi .rhosts
rac2601 root
rac4901 root
rac26 root
rac49 root
[root@rac26 root]# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost
172.17.32.26 rac26
172.17.32.49 rac49
192.168.0.1 rac2601
192.168.0.2 rac4901
[root@rac26 root]#service xinetd restart---這一步在二個節點都要進行相同的高設置
B)、增加ORACLE用戶及相關組別
[root@rac49 pam.d]# groupadd dba
[root@rac49 pam.d]# groupadd oinstall
[root@rac49 pam.d]# useradd -g oinstall -G dba oracle
[root@rac49 pam.d]# passwd oracle
C)、增加相關ORACLE的路徑﹐并更改其屬性
[root@rac49 proc]# mkdir -p /oracle/ora9/product/9.2
[root@rac49 proc]# mkdir /var/opt/oracle
[root@rac49 proc]# chown oracle.dba /var/opt/oracle
[root@rac49 proc]# chown oracle.dba /oracle/ora9/product/9.2
[root@rac49]cd /var
[root@rac49 var]# chown oracle.dba oracle
[root@rac49 /]# chown -R oracle.dba /oracle
D)﹑設置內核參數
[root@rac49 /]# cd /etc/
[root@rac49 etc]# vi sysctl.conf
kernel.shmmax= 204800000
kernel.shmmni= 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
添加以上几行
E)﹑設置ORACLE對文件的要求
[root@rac49 etc]# cd /etc/security
[root@rac49 security]# vi limits.conf
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
添加以上几行
F)﹑設置ORACLE咝械沫h境變量
[oracle@rac49 oracle]$ vi .bash_profile
export DISPLAY="172.17.32.49:0.0"---不同的主機使用不同的IP
export ORACLE_BASE=/oracle/ora9
export ORACLE_HOME=/oracle/ora9/product/9.2
export PATH=$ORACLE_HOME/BIN:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=rac491(rac492)--不同的節點使用不同的SID
export ORACLE_TERM=xterm
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/usr/lib:/oracle/ora9/product/9.2/lib:$LD_LIBRARY_PATH
export PATH=/oracle/ora9/product/9.2/bin:$PATH
export NLS_LANG=AMERICAN
export ORA_NLS=$ORACLE_HOME/ocommon/nls/admin/data
G)﹑應用ORACLE在OS上的補丁﹕p3006854_9204_linux.zip
[root@rac49 /]# cd /usr/bin/
[root@rac49 bin]# ls gcc*
gcc gcc296 gcc-ssa
[root@rac49 bin]# mv /usr/bin/gcc /usr/bin/gcc323
[root@rac49 bin]# ln -s /usr/bin/gcc296 /usr/bin/gcc
[root@rac49 bin]# mv /usr/bin/g++296 /usr/bin/g++
mv: overwrite `/usr/bin/g++'? y
[root@rac49 bin]# ln -s /usr/bin/g++ /usr/bin/g++296
[root@rac49 3006854]# sh rhel3_pre_install.sh
Applying patch...
Patch successfully applied
H)﹑升級內核
[root@rac26 ocfs]# rpm -ivh --nodeps kernel-2.4.21-15.EL.i686.rpm
warning: kernel-2.4.21-15.EL.i686.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:kernel ########################################### [100%]
[root@rac26 grub]# vi grub.conf --/boot/grub
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/sda3
# initrd /initrd-version.img
#boot=/dev/sda
#default=1
default=0 ---此處由1修改為0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Enterprise Linux ES (2.4.21-15.EL)
root (hd0,0)
kernel /vmlinuz-2.4.21-15.EL ro root=LABEL=/
initrd /initrd-2.4.21-15.EL.img
title Red Hat Enterprise Linux ES (2.4.21-9.EL)
root (hd0,0)
kernel /vmlinuz-2.4.21-9.EL ro root=LABEL=/
initrd /initrd-2.4.21-9.EL.img
"grub.conf" 21L, 717C written
重新啟動機器﹐生效
I)﹑咝屑把b載hangcheck
[root@rac49 root]# /sbin/insmod hangcheck-timer changcheck_tick 30 hangcheck_margin=180
Using /lib/modules/2.4.21-9.EL/kernel/drivers/char/hangcheck-timer.o
[root@rac49 root]# grep Hangcheck /var/log/messages
Jan 10 11:33:53 rac49 kernel: Hangcheck: starting hangcheck timer 0.8.0 (tick is 180 seconds, margin is 180 seconds).
Jan 10 11:33:53 rac49 kernel: Hangcheck: Using TSC.
以上環境的設置必須在二個節點都必須進行
6)安裝OCM軟件---在一個節點上安裝
進入安裝目錄﹕
在安裝過程中要執行/tmp/orainstRoot.sh ---只需要在一個節點上咝
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/52388/viewspace-893753/ ,如需转载,请注明出处,否则将追究法律责任。