冗余策略
卷劃分及大小說明
OCRVOTING
Ocrvoting01
8G
Ocrvoting02
8G
Ocrvoting03
8G
DATAFILE
Data01
8G
Data02
8G
FRA_ARCH
Fra01
8G
Fra02
8G
我們這裡OCRVOTING 采用Normal,DATA和FRA 采用external。
11g中每個OCR和vote disk 至少需要600M空間。在ASM 的冗余級別中:
external >= 1
normal >=3
high >=5
在12c裡面,OCR voting disk 外部冗余,至少需要4342MB的空間,Normal 至少需要8711MB的空間。
Cause - Insufficient spaceavailable in the selected Disks. At least, 4,342 MB of free space isrequired. Action - Chooseadditional disks such that the total size should be at least 4,342 MB.
Cause - Insufficient spaceavailable in the selected Disks. At least, 8,711 MB of free space isrequired. Action - Chooseadditional disks such that the total size should be at least 8,711 MB.
具體創建過程,直接在VBOX上創建,或者參考我以前的blog,這裡不在詳述。
用如下腳本獲取綁定腳本:
for i in b c d e f g h; do echo "KERNEL==\"sd*\", BUS==\"scsi\",PROGRAM==\"/sbin/scsi_id -g -u /dev/\$name\", RESULT==\"`/sbin/scsi_id -g -u/dev/sd$i`\", NAME=\"asm-disk$i\", OWNER=\"grid\",GROUP=\"asmadmin\", MODE=\"0660\"" done --在所有節點創建並配置UDEV Rules 文件 [root@asm ~]# touch /etc/udev/rules.d/99-oracle-asmdevices.rules --添加如下內容: KERNEL=="sd*",BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB0fe2de72-ff43e01f",NAME="asm-diskb", OWNER="grid", GROUP="asmadmin",MODE="0660" KERNEL=="sd*",BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBb84b3378-7205c629",NAME="asm-diskc", OWNER="grid", GROUP="asmadmin",MODE="0660" KERNEL=="sd*",BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name", RESULT=="1ATA_VBOX_HARDDISK_VB8c6d2199-64d26b1e",NAME="asm-diskd", OWNER="grid", GROUP="asmadmin",MODE="0660" KERNEL=="sd*",BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBc86e3f5c-ba9c8397",NAME="asm-diske", OWNER="grid", GROUP="asmadmin",MODE="0660" KERNEL=="sd*",BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VB4776a8c1-0b444519",NAME="asm-diskf", OWNER="grid", GROUP="asmadmin",MODE="0660" KERNEL=="sd*",BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBb7771090-d177eeaf",NAME="asm-diskg", OWNER="grid", GROUP="asmadmin",MODE="0660" KERNEL=="sd*",BUS=="scsi", PROGRAM=="/sbin/scsi_id -g -u /dev/$name",RESULT=="1ATA_VBOX_HARDDISK_VBe7da4ea4-622fea96",NAME="asm-diskh", OWNER="grid", GROUP="asmadmin",MODE="0660" --重啟UDEV: [root@asm rules.d]# start_udev Starting udev: [ OK ] --檢查共享設備的所屬關系和權限: [root@rac1 ~]# ll /dev/asm* brw-rw---- 1 grid asmadmin 8, 16 May 28 22:55 /dev/asm-diskb brw-rw---- 1 grid asmadmin 8, 32 May 28 22:55 /dev/asm-diskc brw-rw---- 1 grid asmadmin 8, 48 May 28 22:55 /dev/asm-diskd brw-rw---- 1 grid asmadmin 8, 64 May 28 22:55 /dev/asm-diske brw-rw---- 1 grid asmadmin 8, 80 May 28 22:55 /dev/asm-diskf brw-rw---- 1 grid asmadmin 8, 96 May 28 22:55 /dev/asm-diskg brw-rw---- 1 grid asmadmin 8, 112 May 2822:55 /dev/asm-diskh [root@rac1 ~]#
groupadd -g 1000 oinstall groupadd -g 1200 asmadmin groupadd -g 1201 asmdba groupadd -g 1202 asmoper groupadd -g 1300 dba groupadd -g 1301 oper useradd -m -u 1100 -g oinstall -Gasmadmin,asmdba,asmoper,dba -d /home/grid -s /bin/bash grid useradd -m -u 1101 -g oinstall -Gdba,oper,asmdba -d /home/oracle -s /bin/bash oracle --將用戶grid添加到dba組: [root@rac1 app]# gpasswd -a grid dba Adding user grid to group dba --確認用戶信息: [root@rac1 ~]# id oracle uid=502(oracle) gid=507(oinstall)groups=507(oinstall),502(dba),503(oper),506(asmdba) [root@rac1 ~]# id grid uid=1100(grid) gid=507(oinstall) groups=507(oinstall),504(asmadmin),506(asmdba),505(asmoper) --修改密碼: passwd oracle passwd grid
關閉防火牆:
service iptables status service iptables stop chkconfig iptables off chkconfig iptables --list
設置/etc/selinux/config 文件,將SELINUX設置為disabled。
[root@rac1 ~]# cat/etc/selinux/config # This file controls the state of SELinuxon the system. # SELINUX= can take one of these threevalues: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these twovalues: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
這裡我們使用CTSS.所以要停用 NTP 服務,並從初始化序列中禁用該服務,並刪除 ntp.conf 文件。以 root 用戶身份在兩個 OracleRAC 節點上運行以下命令:
[root@rac1 ~]# /sbin/service ntpd stop Shutting down ntpd: [ OK ] [root@rac1 ~]# chkconfig ntpd off [root@rac1 ~]# mv /etc/ntp.conf/etc/ntp.conf.original [root@rac1 ~]# chkconfig ntpd --list ntpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off [root@rac2 ~]# /sbin/service ntpd stop Shutting down ntpd: [ OK ] [root@rac2 ~]# chkconfig ntpd off [root@rac2 ~]# mv /etc/ntp.conf/etc/ntp.conf.original [root@rac2 ~]# chkconfig ntpd --list ntpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
還要刪除以下文件:
rm /var/run/ntpd.pid
此文件保存了 NTP 後台程序的 pid。
mkdir -p /u01/gridsoft/12.1.0 mkdir -p /u01/gridbase chown -R grid:oinstall /u01 chown -R grid:oinstall /u01 mkdir -p/u01/oracle/12.1.0/db_1 chown-R oracle:oinstall /u01/oracle chmod -R 775 /u01
修改grid用戶的.bash_profile.注意每個節點的不同內容:
export ORACLE_SID=+ASM1 #export ORACLE_SID=+ASM2 export ORACLE_BASE=/u01/gridbase export ORACLE_HOME=/u01/gridsoft/12.1.0 exportPATH=$ORACLE_HOME/bin:$PATH:/usr/local/bin/:. export TEMP=/tmp export TMP=/tmp export TMPDIR=/tmp umask 022
修改oracle 用戶的.bash_profile,注意每個節點的不同內容:
ORACLE_SID=cndba1;export ORACLE_SID #ORACLE_SID=cndba2;export ORACLE_SID ORACLE_UNQNAME=cndba;export ORACLE_UNQNAME JAVA_HOME=/usr/local/java; export JAVA_HOME ORACLE_BASE=/u01/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/12.1.0/db_1; exportORACLE_HOME ORACLE_TERM=xterm; export ORACLE_TERM NLS_DATE_FORMAT="YYYY:MM:DDHH24:MI:SS"; export NLS_DATE_FORMAT NLS_LANG=american_america.ZHS16GBK; exportNLS_LANG TNS_ADMIN=$ORACLE_HOME/network/admin; exportTNS_ADMIN ORA_NLS11=$ORACLE_HOME/nls/data; exportORA_NLS11 PATH=.:${JAVA_HOME}/bin:${PATH}:$HOME/bin:$ORACLE_HOME/bin:$ORA_CRS_HOME/bin PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin export PATH LD_LIBRARY_PATH=$ORACLE_HOME/lib LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/JRE CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib export CLASSPATH THREADS_FLAG=native; export THREADS_FLAG export TEMP=/tmp export TMPDIR=/tmp umask 022