手把手一起安装RAC+DataGuard

RAC集群软件存在两大核心部分:表决磁盘、OCR. 

脚本

1、a_preusers.sh

#!/bin/bash
#Purpose:Create 6 groups named 'oinstall','dba','asmadmin','asmdba','asmoper','oper', plus 2 users named 'oracle','grid'.
#Also setting the Environment
#variable for oracle user.
#variable for grid user.
#Usage:Log on as the superuser('root'),and then execute the command:#./1preusers.sh
#Author:Asher Huang
echo "Now create 6 groups named 'oinstall','dba','asmadmin','asmdba','asmoper','oper'"
echo "Plus 2 users named 'oracle','grid',Also setting the Environment"
groupadd -g 1000 oinstall
groupadd -g 1200 asmadmin
groupadd -g 1201 asmdba
groupadd -g 1202 asmoper
useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper -d /home/grid -s
/bin/bash -c "grid Infrastructure Owner" grid
echo "grid" | passwd --stdin grid
echo 'export PS1="`/bin/hostname -s`-> "'>> /home/grid/.bash_profile
echo "export TMP=/tmp">> /home/grid/.bash_profile
echo 'export TMPDIR=$TMP'>>/home/grid/.bash_profile
echo "export ORACLE_SID=+ASM1">> /home/grid/.bash_profile
echo "export ORACLE_BASE=/u01/app/grid">> /home/grid/.bash_profile
echo "export ORACLE_HOME=/u01/app/11.2.0/grid">> /home/grid/.bash_profile
echo "export ORACLE_TERM=xterm">> /home/grid/.bash_profile
echo "export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'" >> /home/grid/.bash_profile
echo 'export TNS_ADMIN=$ORACLE_HOME/network/admin' >> /home/grid/.bash_profile
echo 'export PATH=/usr/sbin:$PATH'>> /home/grid/.bash_profile
echo 'export PATH=$ORACLE_HOME/bin:$PATH'>> /home/grid/.bash_profile
echo 'export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib' >> /home/grid/.bash_profile
echo 'export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib' >> /home/grid/.bash_profile
echo "export EDITOR=vi" >> /home/grid/.bash_profile
echo "export LANG=en_US" >> /home/grid/.bash_profile
echo "export NLS_LANG=american_america.AL32UTF8" >> /home/grid/.bash_profile
echo "umask 022">> /home/grid/.bash_profile
groupadd -g 1300 dba
groupadd -g 1301 oper
useradd -u 1101 -g oinstall -G dba,oper,asmdba -d /home/oracle -s /bin/bash -c "Oracle Software Owner" oracle
echo "oracle" | passwd --stdin oracle
echo 'export PS1="`/bin/hostname -s`-> "' >> /home/oracle/.bash_profile
echo "export TMP=/tmp" >> /home/oracle/.bash_profile
echo 'export TMPDIR=$TMP'>>/home/oracle/.bash_profile
echo "export ORACLE_HOSTNAME=node1.localdomain">> /home/oracle/.bash_profile
echo "export ORACLE_SID=devdb1">> /home/oracle/.bash_profile
echo "export ORACLE_BASE=/u01/app/oracle">> /home/oracle/.bash_profile
echo 'export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1'>> /home/oracle/.bash_profile
echo "export ORACLE_UNQNAME=devdb">> /home/oracle/.bash_profile
echo 'export TNS_ADMIN=$ORACLE_HOME/network/admin' >> /home/oracle/.bash_profile
echo "export ORACLE_TERM=xterm">> /home/oracle/.bash_profile
echo 'export PATH=/usr/sbin:$PATH'>> /home/oracle/.bash_profile
echo 'export PATH=$ORACLE_HOME/bin:$PATH'>> /home/oracle/.bash_profile
echo 'export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib'>> /home/oracle/.bash_profile
echo 'export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib' >> /home/oracle/.bash_profile
echo "export EDITOR=vi" >> /home/oracle/.bash_profile
echo "export LANG=en_US" >> /home/oracle/.bash_profile
echo "export NLS_LANG=american_america.AL32UTF8" >> /home/oracle/.bash_profile
echo "export NLS_DATE_FORMAT='yyyy/mm/dd hh24:mi:ss'" >> /home/oracle/.bash_profile
echo "umask 022">> /home/oracle/.bash_profile
echo "The Groups and users has been created"
echo "The Environment for grid,oracle also has been set successfully"
View Code
  • 在node1上执行完此脚本,注意修改在node上执行完成此脚本之后,需要手工修改一些参数,因为脚本中的设置是基于node1上的修改.不适合node2上的参数
  • 在node2上将export ORACLE_HOSTNAME=node1.localdomain修改为export ORACLE_HOSTNAME=node2.localdomain
  • 在node2上,在oracle用户下的.bash_profile中,将ORACLE_SID=devdb1修改为ORACLE_SID=devdb2
  • 在node2上,在grid用户下的.bash_profile中,将export ORACLE_SID=+ASM1修改为export ORACLE_SID=+ASM2 

2、b_predir.sh

#!/bin/bash
#Purpose:Create the necessary directory for oracle,grid users and change the authention to oracle,grid users.
#Usage:Log on as the superuser('root'),and then execute the command:#./2predir.sh
#Author:Asher Huang
echo "Now create the necessary directory for oracle,grid users and change
the authention to oracle,grid users..."
mkdir -p /u01/app/grid
mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01
chown -R grid:oinstall /u01/app/grid
chown -R grid:oinstall /u01/app/11.2.0
chmod -R 775 /u01
echo "The necessary directory for oracle,grid users and change the authention to oracle,grid users has been finished"
View Code 

3、c_prelimits.sh

#!/bin/bash
#Purpose:Change the /etc/security/limits.conf.
#Usage:Log on as the superuser('root'),and then execute the command:#./3prelimits.sh
#Author:Asher Huang
echo "Now modify the /etc/security/limits.conf,but backup it named /etc/security/limits.conf.bak before"
cp /etc/security/limits.conf /etc/security/limits.conf.bak
echo "oracle soft nproc 2047" >>/etc/security/limits.conf
echo "oracle hard nproc 16384" >>/etc/security/limits.conf
echo "oracle soft nofile 1024" >>/etc/security/limits.conf
echo "oracle hard nofile 65536" >>/etc/security/limits.conf
echo "grid soft nproc 2047" >>/etc/security/limits.conf
echo "grid hard nproc 16384" >>/etc/security/limits.conf
echo "grid soft nofile 1024" >>/etc/security/limits.conf
echo "grid hard nofile 65536" >>/etc/security/limits.conf
echo "Modifing the /etc/security/limits.conf has been succeed."
View Code 

4、d_prelongi.sh

#!/bin/bash
#Purpose:Modify the /etc/pam.d/login.
#Usage:Log on as the superuser('root'),and then execute the command:#./4prelimits.sh
#Author:Asher Huang
echo "Now modify the /etc/pam.d/login,but with a backup named /etc/pam.d/login.bak"
cp /etc/pam.d/login /etc/pam.d/login.bak
echo "session required /lib/security/pam_limits.so" >>/etc/pam.d/login
echo "session required pam_limits.so" >>/etc/pam.d/login
echo "Modifing the /etc/pam.d/login has been succeed."
View Code 

5、e_preprofile.sh

#!/bin/bash
#Purpose:Modify the /etc/profile.
#Usage:Log on as the superuser('root'),and then execute the command:#./5preprofile.sh
#Author:Asher Huang
echo "Now modify the /etc/profile,but with a backup named /etc/profile.bak"
cp /etc/profile /etc/profile.bak
echo 'if [ $USER = "oracle" ]||[ $USER = "grid" ]; then' >> /etc/profile
echo 'if [ $SHELL = "/bin/ksh" ]; then' >> /etc/profile
echo 'ulimit -p 16384' >> /etc/profile
echo 'ulimit -n 65536' >> /etc/profile
echo 'else' >> /etc/profile
echo 'ulimit -u 16384 -n 65536' >> /etc/profile
echo 'fi' >> /etc/profile
echo 'fi' >> /etc/profile
echo "Modifing the /etc/profile has been succeed."
View Code 

6、f_presysctl.sh

#!/bin/bash
#Purpose:Modify the /etc/sysctl.conf.
#Usage:Log on as the superuser('root'),and then execute the command:#./6presysctl.sh
#Author:Asher Huang
echo "Now modify the /etc/sysctl.conf,but with a backup named /etc/sysctl.bak"
cp /etc/sysctl.conf /etc/sysctl.conf.bak
echo "fs.aio-max-nr = 1048576" >> /etc/sysctl.conf
echo "fs.file-max = 6815744" >> /etc/sysctl.conf
echo "kernel.shmall = 2097152" >> /etc/sysctl.conf
echo "kernel.shmmax = 1054472192" >> /etc/sysctl.conf
echo "kernel.shmmni = 4096" >> /etc/sysctl.conf
echo "kernel.sem = 250 32000 100 128" >> /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 9000 65500" >> /etc/sysctl.conf
echo "net.core.rmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.rmem_max = 4194304" >> /etc/sysctl.conf
echo "net.core.wmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.wmem_max = 1048586" >> /etc/sysctl.conf
echo "net.ipv4.tcp_wmem = 262144 262144 262144" >> /etc/sysctl.conf
echo "net.ipv4.tcp_rmem = 4194304 4194304 4194304" >> /etc/sysctl.conf
echo "Modifing the /etc/sysctl.conf has been succeed."
echo "Now make the changes take effect....."
sysctl -p
View Code 

双节点上配置内容

0、停止 ntp服务,11gR2新增的检查项

[root@node2 ~]# service ntpd status
ntpd is stopped
[root@node2 ~]# chkconfig ntpd off
[root@node2 ~]# cp /etc/ntp.conf /etc/ntp.conf.bak
[root@node2 ~]# rm -rf /etc/ntp.conf
View Code

两个节点都要执行

node1-> ./runcluvfy.sh stage -pre crsinst -n node1,node2 -fixup -verbose

Performing pre-checks for cluster services setup 

Checking node reachability...

Check: Node reachability from node "node1"
  Destination Node                      Reachable?              
  ------------------------------------  ------------------------
  node1                                 yes                     
  node2                                 yes                     
Result: Node reachability check passed from node "node1"


Checking user equivalence...

Check: User equivalence for user "grid"
  Node Name                             Comment                 
  ------------------------------------  ------------------------
  node2                                 passed                  
  node1                                 passed                  
Result: User equivalence check passed for user "grid"

Checking node connectivity...

Checking hosts config file...
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         passed                                            
  node1         passed                                            

Verification of the hosts config file successful


Interface information for node "node2"
 Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU   
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 eth0   192.168.1.192   192.168.1.0     0.0.0.0         192.168.1.1     00:0C:29:70:8F:EA 1500  
 eth1   192.168.137.12  192.168.137.0   0.0.0.0         192.168.1.1     00:0C:29:70:8F:F4 1500  


Interface information for node "node1"
 Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU   
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 eth0   192.168.1.191   192.168.1.0     0.0.0.0         192.168.1.1     00:0C:29:A6:E0:06 1500  
 eth1   192.168.137.11  192.168.137.0   0.0.0.0         192.168.1.1     00:0C:29:A6:E0:10 1500  


Check: Node connectivity of subnet "192.168.1.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node2:eth0                      node1:eth0                      yes             
Result: Node connectivity passed for subnet "192.168.1.0" with node(s) node2,node1


Check: TCP connectivity of subnet "192.168.1.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node1:192.168.1.191             node2:192.168.1.192             passed          
Result: TCP connectivity check passed for subnet "192.168.1.0"


Check: Node connectivity of subnet "192.168.137.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node2:eth1                      node1:eth1                      yes             
Result: Node connectivity passed for subnet "192.168.137.0" with node(s) node2,node1


Check: TCP connectivity of subnet "192.168.137.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node1:192.168.137.11            node2:192.168.137.12            passed          
Result: TCP connectivity check passed for subnet "192.168.137.0"


Interfaces found on subnet "192.168.1.0" that are likely candidates for VIP are:
node2 eth0:192.168.1.192
node1 eth0:192.168.1.191

Interfaces found on subnet "192.168.137.0" that are likely candidates for a private interconnect are:
node2 eth1:192.168.137.12
node1 eth1:192.168.137.11

Result: Node connectivity check passed


Check: Total memory 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1.96GB (2054996.0KB)      1.5GB (1572864.0KB)       passed    
  node1         1.96GB (2054996.0KB)      1.5GB (1572864.0KB)       passed    
Result: Total memory check passed

Check: Available memory 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1.82GB (1903472.0KB)      50MB (51200.0KB)          passed    
  node1         1.75GB (1838776.0KB)      50MB (51200.0KB)          passed    
Result: Available memory check passed

Check: Swap space 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         5GB (5242876.0KB)         2.94GB (3082494.0KB)      passed    
  node1         5GB (5242876.0KB)         2.94GB (3082494.0KB)      passed    
Result: Swap space check passed

Check: Free disk space for "node2:/tmp" 
  Path              Node Name     Mount point   Available     Required      Comment     
  ----------------  ------------  ------------  ------------  ------------  ------------
  /tmp              node2         /             11.4GB        1GB           passed      
Result: Free disk space check passed for "node2:/tmp"

Check: Free disk space for "node1:/tmp" 
  Path              Node Name     Mount point   Available     Required      Comment     
  ----------------  ------------  ------------  ------------  ------------  ------------
  /tmp              node1         /             7.76GB        1GB           passed      
Result: Free disk space check passed for "node1:/tmp"

Check: User existence for "grid" 
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         exists                    passed                  
  node1         exists                    passed                  
Result: User existence check passed for "grid"

Check: Group existence for "oinstall" 
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         exists                    passed                  
  node1         exists                    passed                  
Result: Group existence check passed for "oinstall"

Check: Group existence for "dba" 
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         exists                    passed                  
  node1         exists                    passed                  
Result: Group existence check passed for "dba"

Check: Membership of user "grid" in group "oinstall" [as Primary]
  Node Name         User Exists   Group Exists  User in Group  Primary       Comment     
  ----------------  ------------  ------------  ------------  ------------  ------------
  node2             yes           yes           yes           yes           passed      
  node1             yes           yes           yes           yes           passed      
Result: Membership check for user "grid" in group "oinstall" [as Primary] passed

Check: Membership of user "grid" in group "dba" 
  Node Name         User Exists   Group Exists  User in Group  Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             yes           yes           yes           passed          
  node1             yes           yes           yes           passed          
Result: Membership check for user "grid" in group "dba" passed

Check: Run level 
  Node Name     run level                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         3                         3,5                       passed    
  node1         3                         3,5                       passed    
Result: Run level check passed

Check: Hard limits for "maximum open file descriptors" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             hard          65536         65536         passed          
  node1             hard          65536         65536         passed          
Result: Hard limits check passed for "maximum open file descriptors"

Check: Soft limits for "maximum open file descriptors" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             soft          1024          1024          passed          
  node1             soft          1024          1024          passed          
Result: Soft limits check passed for "maximum open file descriptors"

Check: Hard limits for "maximum user processes" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             hard          16384         16384         passed          
  node1             hard          16384         16384         passed          
Result: Hard limits check passed for "maximum user processes"

Check: Soft limits for "maximum user processes" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             soft          2047          2047          passed          
  node1             soft          2047          2047          passed          
Result: Soft limits check passed for "maximum user processes"

Check: System architecture 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         x86_64                    x86_64                    passed    
  node1         x86_64                    x86_64                    passed    
Result: System architecture check passed

Check: Kernel version 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         2.6.39-200.24.1.el6uek.x86_64  2.6.9                     passed    
  node1         2.6.39-200.24.1.el6uek.x86_64  2.6.9                     passed    
Result: Kernel version check passed

Check: Kernel parameter for "semmsl" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         250                       250                       passed    
  node1         250                       250                       passed    
Result: Kernel parameter check passed for "semmsl"

Check: Kernel parameter for "semmns" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         32000                     32000                     passed    
  node1         32000                     32000                     passed    
Result: Kernel parameter check passed for "semmns"

Check: Kernel parameter for "semopm" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         100                       100                       passed    
  node1         100                       100                       passed    
Result: Kernel parameter check passed for "semopm"

Check: Kernel parameter for "semmni" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         128                       128                       passed    
  node1         128                       128                       passed    
Result: Kernel parameter check passed for "semmni"

Check: Kernel parameter for "shmmax" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1054472192                536870912                 passed    
  node1         1054472192                536870912                 passed    
Result: Kernel parameter check passed for "shmmax"

Check: Kernel parameter for "shmmni" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         4096                      4096                      passed    
  node1         4096                      4096                      passed    
Result: Kernel parameter check passed for "shmmni"

Check: Kernel parameter for "shmall" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         2097152                   2097152                   passed    
  node1         2097152                   2097152                   passed    
Result: Kernel parameter check passed for "shmall"

Check: Kernel parameter for "file-max" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         6815744                   6815744                   passed    
  node1         6815744                   6815744                   passed    
Result: Kernel parameter check passed for "file-max"

Check: Kernel parameter for "ip_local_port_range" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         between 9000 & 65500      between 9000 & 65500      passed    
  node1         between 9000 & 65500      between 9000 & 65500      passed    
Result: Kernel parameter check passed for "ip_local_port_range"

Check: Kernel parameter for "rmem_default" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         262144                    262144                    passed    
  node1         262144                    262144                    passed    
Result: Kernel parameter check passed for "rmem_default"

Check: Kernel parameter for "rmem_max" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         4194304                   4194304                   passed    
  node1         4194304                   4194304                   passed    
Result: Kernel parameter check passed for "rmem_max"

Check: Kernel parameter for "wmem_default" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         262144                    262144                    passed    
  node1         262144                    262144                    passed    
Result: Kernel parameter check passed for "wmem_default"

Check: Kernel parameter for "wmem_max" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1048586                   1048576                   passed    
  node1         1048586                   1048576                   passed    
Result: Kernel parameter check passed for "wmem_max"

Check: Kernel parameter for "aio-max-nr" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1048576                   1048576                   passed    
  node1         1048576                   1048576                   passed    
Result: Kernel parameter check passed for "aio-max-nr"

Check: Package existence for "make-3.80" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         make-3.81-20.el6          make-3.80                 passed    
  node1         make-3.81-20.el6          make-3.80                 passed    
Result: Package existence check passed for "make-3.80"

Check: Package existence for "binutils-2.15.92.0.2" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         binutils-2.20.51.0.2-5.34.el6  binutils-2.15.92.0.2      passed    
  node1         binutils-2.20.51.0.2-5.34.el6  binutils-2.15.92.0.2      passed    
Result: Package existence check passed for "binutils-2.15.92.0.2"

Check: Package existence for "gcc-3.4.6" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         gcc-4.4.7-3.el6           gcc-3.4.6                 passed    
  node1         gcc-4.4.7-3.el6           gcc-3.4.6                 passed    
Result: Package existence check passed for "gcc-3.4.6"

Check: Package existence for "libaio-0.3.105 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libaio-0.3.106-5 (i386)   libaio-0.3.105 (i386)     passed    
  node1         libaio-0.3.106-5 (i386)   libaio-0.3.105 (i386)     passed    
Result: Package existence check passed for "libaio-0.3.105 (i386)"

Check: Package existence for "libaio-0.3.105 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libaio-0.3.107-10.el6 (x86_64)  libaio-0.3.105 (x86_64)   passed    
  node1         libaio-0.3.107-10.el6 (x86_64)  libaio-0.3.105 (x86_64)   passed    
Result: Package existence check passed for "libaio-0.3.105 (x86_64)"

Check: Package existence for "glibc-2.3.4-2.41 (i686)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         glibc-2.12-1.107.el6 (i686)  glibc-2.3.4-2.41 (i686)   passed    
  node1         glibc-2.12-1.107.el6 (i686)  glibc-2.3.4-2.41 (i686)   passed    
Result: Package existence check passed for "glibc-2.3.4-2.41 (i686)"

Check: Package existence for "glibc-2.3.4-2.41 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         glibc-2.12-1.107.el6 (x86_64)  glibc-2.3.4-2.41 (x86_64)  passed    
  node1         glibc-2.12-1.107.el6 (x86_64)  glibc-2.3.4-2.41 (x86_64)  passed    
Result: Package existence check passed for "glibc-2.3.4-2.41 (x86_64)"

Check: Package existence for "compat-libstdc++-33-3.2.3 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         compat-libstdc++-33-3.2.3-61 (i386)  compat-libstdc++-33-3.2.3 (i386)  passed    
  node1         compat-libstdc++-33-3.2.3-61 (i386)  compat-libstdc++-33-3.2.3 (i386)  passed    
Result: Package existence check passed for "compat-libstdc++-33-3.2.3 (i386)"

Check: Package existence for "compat-libstdc++-33-3.2.3 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         compat-libstdc++-33-3.2.3-69.el6 (x86_64)  compat-libstdc++-33-3.2.3 (x86_64)  passed    
  node1         compat-libstdc++-33-3.2.3-69.el6 (x86_64)  compat-libstdc++-33-3.2.3 (x86_64)  passed    
Result: Package existence check passed for "compat-libstdc++-33-3.2.3 (x86_64)"

Check: Package existence for "elfutils-libelf-0.97 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         elfutils-libelf-0.152-1.el6 (x86_64)  elfutils-libelf-0.97 (x86_64)  passed    
  node1         elfutils-libelf-0.152-1.el6 (x86_64)  elfutils-libelf-0.97 (x86_64)  passed    
Result: Package existence check passed for "elfutils-libelf-0.97 (x86_64)"

Check: Package existence for "elfutils-libelf-devel-0.97" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         elfutils-libelf-devel-0.152-1.el6  elfutils-libelf-devel-0.97  passed    
  node1         elfutils-libelf-devel-0.152-1.el6  elfutils-libelf-devel-0.97  passed    
Result: Package existence check passed for "elfutils-libelf-devel-0.97"

Check: Package existence for "glibc-common-2.3.4" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         glibc-common-2.12-1.107.el6  glibc-common-2.3.4        passed    
  node1         glibc-common-2.12-1.107.el6  glibc-common-2.3.4        passed    
Result: Package existence check passed for "glibc-common-2.3.4"

Check: Package existence for "glibc-devel-2.3.4 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         glibc-devel-2.12-1.107.el6 (x86_64)  glibc-devel-2.3.4 (x86_64)  passed    
  node1         glibc-devel-2.12-1.107.el6 (x86_64)  glibc-devel-2.3.4 (x86_64)  passed    
Result: Package existence check passed for "glibc-devel-2.3.4 (x86_64)"

Check: Package existence for "glibc-headers-2.3.4" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         glibc-headers-2.12-1.107.el6  glibc-headers-2.3.4       passed    
  node1         glibc-headers-2.12-1.107.el6  glibc-headers-2.3.4       passed    
Result: Package existence check passed for "glibc-headers-2.3.4"

Check: Package existence for "gcc-c++-3.4.6" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         gcc-c++-4.4.7-3.el6       gcc-c++-3.4.6             passed    
  node1         gcc-c++-4.4.7-3.el6       gcc-c++-3.4.6             passed    
Result: Package existence check passed for "gcc-c++-3.4.6"

Check: Package existence for "libaio-devel-0.3.105 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libaio-devel-0.3.105-2 (i386)  libaio-devel-0.3.105 (i386)  passed    
  node1         libaio-devel-0.3.105-2 (i386)  libaio-devel-0.3.105 (i386)  passed    
Result: Package existence check passed for "libaio-devel-0.3.105 (i386)"

Check: Package existence for "libaio-devel-0.3.105 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libaio-devel-0.3.107-10.el6 (x86_64)  libaio-devel-0.3.105 (x86_64)  passed    
  node1         libaio-devel-0.3.107-10.el6 (x86_64)  libaio-devel-0.3.105 (x86_64)  passed    
Result: Package existence check passed for "libaio-devel-0.3.105 (x86_64)"

Check: Package existence for "libgcc-3.4.6 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libgcc-3.4.6-8 (i386)     libgcc-3.4.6 (i386)       passed    
  node1         libgcc-3.4.6-8 (i386)     libgcc-3.4.6 (i386)       passed    
Result: Package existence check passed for "libgcc-3.4.6 (i386)"

Check: Package existence for "libgcc-3.4.6 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libgcc-4.4.7-3.el6 (x86_64)  libgcc-3.4.6 (x86_64)     passed    
  node1         libgcc-4.4.7-3.el6 (x86_64)  libgcc-3.4.6 (x86_64)     passed    
Result: Package existence check passed for "libgcc-3.4.6 (x86_64)"

Check: Package existence for "libstdc++-3.4.6 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libstdc++-3.4.6-8 (i386)  libstdc++-3.4.6 (i386)    passed    
  node1         libstdc++-3.4.6-8 (i386)  libstdc++-3.4.6 (i386)    passed    
Result: Package existence check passed for "libstdc++-3.4.6 (i386)"

Check: Package existence for "libstdc++-3.4.6 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libstdc++-4.4.7-3.el6 (x86_64)  libstdc++-3.4.6 (x86_64)  passed    
  node1         libstdc++-4.4.7-3.el6 (x86_64)  libstdc++-3.4.6 (x86_64)  passed    
Result: Package existence check passed for "libstdc++-3.4.6 (x86_64)"

Check: Package existence for "libstdc++-devel-3.4.6 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libstdc++-devel-4.4.7-3.el6 (x86_64)  libstdc++-devel-3.4.6 (x86_64)  passed    
  node1         libstdc++-devel-4.4.7-3.el6 (x86_64)  libstdc++-devel-3.4.6 (x86_64)  passed    
Result: Package existence check passed for "libstdc++-devel-3.4.6 (x86_64)"

Check: Package existence for "sysstat-5.0.5" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         sysstat-9.0.4-20.el6      sysstat-5.0.5             passed    
  node1         sysstat-9.0.4-20.el6      sysstat-5.0.5             passed    
Result: Package existence check passed for "sysstat-5.0.5"

Check: Package existence for "unixODBC-2.2.11 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         unixODBC-2.2.11-10.el5 (i386)  unixODBC-2.2.11 (i386)    passed    
  node1         unixODBC-2.2.11-10.el5 (i386)  unixODBC-2.2.11 (i386)    passed    
Result: Package existence check passed for "unixODBC-2.2.11 (i386)"

Check: Package existence for "unixODBC-2.2.11 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         unixODBC-2.2.14-12.el6_3 (x86_64)  unixODBC-2.2.11 (x86_64)  passed    
  node1         unixODBC-2.2.14-12.el6_3 (x86_64)  unixODBC-2.2.11 (x86_64)  passed    
Result: Package existence check passed for "unixODBC-2.2.11 (x86_64)"

Check: Package existence for "unixODBC-devel-2.2.11 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         unixODBC-devel-2.2.11-2 (i386)  unixODBC-devel-2.2.11 (i386)  passed    
  node1         unixODBC-devel-2.2.11-2 (i386)  unixODBC-devel-2.2.11 (i386)  passed    
Result: Package existence check passed for "unixODBC-devel-2.2.11 (i386)"

Check: Package existence for "unixODBC-devel-2.2.11 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         unixODBC-devel-2.2.14-12.el6_3 (x86_64)  unixODBC-devel-2.2.11 (x86_64)  passed    
  node1         unixODBC-devel-2.2.14-12.el6_3 (x86_64)  unixODBC-devel-2.2.11 (x86_64)  passed    
Result: Package existence check passed for "unixODBC-devel-2.2.11 (x86_64)"

Check: Package existence for "pdksh-5.2.14" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         pdksh-5.2.14-24           pdksh-5.2.14              passed    
  node1         pdksh-5.2.14-24           pdksh-5.2.14              passed    
Result: Package existence check passed for "pdksh-5.2.14"

Check: Package existence for "expat-1.95.7 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         expat-2.0.1-11.el6_2 (x86_64)  expat-1.95.7 (x86_64)     passed    
  node1         expat-2.0.1-11.el6_2 (x86_64)  expat-1.95.7 (x86_64)     passed    
Result: Package existence check passed for "expat-1.95.7 (x86_64)"

Checking for multiple users with UID value 0
Result: Check for multiple users with UID value 0 passed 

Check: Current group ID 
Result: Current group ID check passed
Checking Core file name pattern consistency...
Core file name pattern consistency check passed.

Checking to make sure user "grid" is not in "root" group
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         does not exist            passed                  
  node1         does not exist            passed                  
Result: User "grid" is not part of "root" group. Check passed

Check default user file creation mask
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         0022                      0022                      passed    
  node1         0022                      0022                      passed    
Result: Default user file creation mask check passed

Starting Clock synchronization checks using Network Time Protocol(NTP)...

NTP Configuration file check started...
Network Time Protocol(NTP) configuration file not found on any of the nodes. Oracle Cluster Time Synchronization Service(CTSS) can be used instead of NTP for time synchronization on the cluster nodes

Result: Clock synchronization check using Network Time Protocol(NTP) passed


Pre-check for cluster services setup was successful. 
View Code

chkconfig ntp off(将ntp服务,在所有的运行模式下,都给停止掉.)

1、SSH对等性

对等性配置,要注意名字不能写错:authorized_keys,勿将_写成-.

1.1、先是在node1上,oracle用户下执行如下步骤:

node1-> mkdir ~/.ssh
node1-> chmod 700 ~/.ssh
node1-> ssh-keygen -t rsa
node1-> ssh-keygen -t dsa
View Code

1.2、上面四步骤,同样需要在node2上执行.

node1-> cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
node1-> cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
node1-> ssh node2 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
node1-> ssh node2 cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
node1-> scp ~/.ssh/authorized_keys node2:~/.ssh/authorized_keys
View Code

1.3、node1节点验证:

node1-> ssh node1 date
Sun Jun 30 08:50:48 CST 2013
node1-> ssh node2 date
Sun Jun 30 08:50:57 CST 2013
node1-> ssh node1.localdomain date
Sun Jun 30 08:50:55 CST 2013
node1-> ssh node2.localdomain date
Sun Jun 30 08:51:05 CST 2013
node1-> ssh node1-priv date
Sun Jun 30 08:51:13 CST 2013
node1-> ssh node2-priv date
Sun Jun 30 08:51:23 CST 2013
node1-> ssh node1-priv.localdomain date
Sun Jun 30 08:51:23 CST 2013
node1-> ssh node2-priv.localdomain date
Sun Jun 30 08:51:33 CST 2013
View Code

1.4、将node1节点的验证步骤,同样在node2上同样执行一次.验证全部通过.

1.5、将上述四步(1.1、1.2、1.3、1.4)在两个节点的grid用户下再执行一遍.实现双节点(node1、node2)下,双用户(oracle、grid)下的SSH对等性验证.

2、共享磁盘添加成功

3、ASM磁盘配置完成

--------------

安装Grid,创建在griddg磁盘组上

安装grid infrastructure之前进行脚本验证

node1-> ./runcluvfy.sh stage -pre crsinst -n node1,node2 -fixup -verbose

Performing pre-checks for cluster services setup 

Checking node reachability...

Check: Node reachability from node "node1"
  Destination Node                      Reachable?              
  ------------------------------------  ------------------------
  node1                                 yes                     
  node2                                 yes                     
Result: Node reachability check passed from node "node1"


Checking user equivalence...

Check: User equivalence for user "grid"
  Node Name                             Comment                 
  ------------------------------------  ------------------------
  node2                                 passed                  
  node1                                 passed                  
Result: User equivalence check passed for user "grid"

Checking node connectivity...

Checking hosts config file...
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         passed                                            
  node1         passed                                            

Verification of the hosts config file successful


Interface information for node "node2"
 Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU   
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 eth0   192.168.1.192   192.168.1.0     0.0.0.0         192.168.1.1     00:0C:29:70:8F:EA 1500  
 eth1   192.168.137.12  192.168.137.0   0.0.0.0         192.168.1.1     00:0C:29:70:8F:F4 1500  


Interface information for node "node1"
 Name   IP Address      Subnet          Gateway         Def. Gateway    HW Address        MTU   
 ------ --------------- --------------- --------------- --------------- ----------------- ------
 eth0   192.168.1.191   192.168.1.0     0.0.0.0         192.168.1.1     00:0C:29:A6:E0:06 1500  
 eth1   192.168.137.11  192.168.137.0   0.0.0.0         192.168.1.1     00:0C:29:A6:E0:10 1500  


Check: Node connectivity of subnet "192.168.1.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node2:eth0                      node1:eth0                      yes             
Result: Node connectivity passed for subnet "192.168.1.0" with node(s) node2,node1


Check: TCP connectivity of subnet "192.168.1.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node1:192.168.1.191             node2:192.168.1.192             passed          
Result: TCP connectivity check passed for subnet "192.168.1.0"


Check: Node connectivity of subnet "192.168.137.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node2:eth1                      node1:eth1                      yes             
Result: Node connectivity passed for subnet "192.168.137.0" with node(s) node2,node1


Check: TCP connectivity of subnet "192.168.137.0"
  Source                          Destination                     Connected?      
  ------------------------------  ------------------------------  ----------------
  node1:192.168.137.11            node2:192.168.137.12            passed          
Result: TCP connectivity check passed for subnet "192.168.137.0"


Interfaces found on subnet "192.168.1.0" that are likely candidates for VIP are:
node2 eth0:192.168.1.192
node1 eth0:192.168.1.191

Interfaces found on subnet "192.168.137.0" that are likely candidates for a private interconnect are:
node2 eth1:192.168.137.12
node1 eth1:192.168.137.11

Result: Node connectivity check passed


Check: Total memory 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1.96GB (2054996.0KB)      1.5GB (1572864.0KB)       passed    
  node1         1.96GB (2054996.0KB)      1.5GB (1572864.0KB)       passed    
Result: Total memory check passed

Check: Available memory 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1.85GB (1943692.0KB)      50MB (51200.0KB)          passed    
  node1         1.77GB (1856724.0KB)      50MB (51200.0KB)          passed    
Result: Available memory check passed

Check: Swap space 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         5GB (5242876.0KB)         2.94GB (3082494.0KB)      passed    
  node1         5GB (5242876.0KB)         2.94GB (3082494.0KB)      passed    
Result: Swap space check passed

Check: Free disk space for "node2:/tmp" 
  Path              Node Name     Mount point   Available     Required      Comment     
  ----------------  ------------  ------------  ------------  ------------  ------------
  /tmp              node2         /             12.2GB        1GB           passed      
Result: Free disk space check passed for "node2:/tmp"

Check: Free disk space for "node1:/tmp" 
  Path              Node Name     Mount point   Available     Required      Comment     
  ----------------  ------------  ------------  ------------  ------------  ------------
  /tmp              node1         /             8.63GB        1GB           passed      
Result: Free disk space check passed for "node1:/tmp"

Check: User existence for "grid" 
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         exists                    passed                  
  node1         exists                    passed                  
Result: User existence check passed for "grid"

Check: Group existence for "oinstall" 
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         exists                    passed                  
  node1         exists                    passed                  
Result: Group existence check passed for "oinstall"

Check: Group existence for "dba" 
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         exists                    passed                  
  node1         exists                    passed                  
Result: Group existence check passed for "dba"

Check: Membership of user "grid" in group "oinstall" [as Primary]
  Node Name         User Exists   Group Exists  User in Group  Primary       Comment     
  ----------------  ------------  ------------  ------------  ------------  ------------
  node2             yes           yes           yes           yes           passed      
  node1             yes           yes           yes           yes           passed      
Result: Membership check for user "grid" in group "oinstall" [as Primary] passed

Check: Membership of user "grid" in group "dba" 
  Node Name         User Exists   Group Exists  User in Group  Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             yes           yes           no            failed          
  node1             yes           yes           no            failed          
Result: Membership check for user "grid" in group "dba" failed

Check: Run level 
  Node Name     run level                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         3                         3,5                       passed    
  node1         3                         3,5                       passed    
Result: Run level check passed

Check: Hard limits for "maximum open file descriptors" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             hard          65536         65536         passed          
  node1             hard          65536         65536         passed          
Result: Hard limits check passed for "maximum open file descriptors"

Check: Soft limits for "maximum open file descriptors" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             soft          1024          1024          passed          
  node1             soft          1024          1024          passed          
Result: Soft limits check passed for "maximum open file descriptors"

Check: Hard limits for "maximum user processes" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             hard          16384         16384         passed          
  node1             hard          16384         16384         passed          
Result: Hard limits check passed for "maximum user processes"

Check: Soft limits for "maximum user processes" 
  Node Name         Type          Available     Required      Comment         
  ----------------  ------------  ------------  ------------  ----------------
  node2             soft          2047          2047          passed          
  node1             soft          2047          2047          passed          
Result: Soft limits check passed for "maximum user processes"

Check: System architecture 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         x86_64                    x86_64                    passed    
  node1         x86_64                    x86_64                    passed    
Result: System architecture check passed

Check: Kernel version 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         2.6.39-200.24.1.el6uek.x86_64  2.6.9                     passed    
  node1         2.6.39-200.24.1.el6uek.x86_64  2.6.9                     passed    
Result: Kernel version check passed

Check: Kernel parameter for "semmsl" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         250                       250                       passed    
  node1         250                       250                       passed    
Result: Kernel parameter check passed for "semmsl"

Check: Kernel parameter for "semmns" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         32000                     32000                     passed    
  node1         32000                     32000                     passed    
Result: Kernel parameter check passed for "semmns"

Check: Kernel parameter for "semopm" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         100                       100                       passed    
  node1         100                       100                       passed    
Result: Kernel parameter check passed for "semopm"

Check: Kernel parameter for "semmni" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         128                       128                       passed    
  node1         128                       128                       passed    
Result: Kernel parameter check passed for "semmni"

Check: Kernel parameter for "shmmax" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1054472192                536870912                 passed    
  node1         1054472192                536870912                 passed    
Result: Kernel parameter check passed for "shmmax"

Check: Kernel parameter for "shmmni" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         4096                      4096                      passed    
  node1         4096                      4096                      passed    
Result: Kernel parameter check passed for "shmmni"

Check: Kernel parameter for "shmall" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         2097152                   2097152                   passed    
  node1         2097152                   2097152                   passed    
Result: Kernel parameter check passed for "shmall"

Check: Kernel parameter for "file-max" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         6815744                   6815744                   passed    
  node1         6815744                   6815744                   passed    
Result: Kernel parameter check passed for "file-max"

Check: Kernel parameter for "ip_local_port_range" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         between 9000 & 65500      between 9000 & 65500      passed    
  node1         between 9000 & 65500      between 9000 & 65500      passed    
Result: Kernel parameter check passed for "ip_local_port_range"

Check: Kernel parameter for "rmem_default" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         262144                    262144                    passed    
  node1         262144                    262144                    passed    
Result: Kernel parameter check passed for "rmem_default"

Check: Kernel parameter for "rmem_max" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         4194304                   4194304                   passed    
  node1         4194304                   4194304                   passed    
Result: Kernel parameter check passed for "rmem_max"

Check: Kernel parameter for "wmem_default" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         262144                    262144                    passed    
  node1         262144                    262144                    passed    
Result: Kernel parameter check passed for "wmem_default"

Check: Kernel parameter for "wmem_max" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1048586                   1048576                   passed    
  node1         1048586                   1048576                   passed    
Result: Kernel parameter check passed for "wmem_max"

Check: Kernel parameter for "aio-max-nr" 
  Node Name     Configured                Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         1048576                   1048576                   passed    
  node1         1048576                   1048576                   passed    
Result: Kernel parameter check passed for "aio-max-nr"

Check: Package existence for "make-3.80" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         make-3.81-20.el6          make-3.80                 passed    
  node1         make-3.81-20.el6          make-3.80                 passed    
Result: Package existence check passed for "make-3.80"

Check: Package existence for "binutils-2.15.92.0.2" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         binutils-2.20.51.0.2-5.34.el6  binutils-2.15.92.0.2      passed    
  node1         binutils-2.20.51.0.2-5.34.el6  binutils-2.15.92.0.2      passed    
Result: Package existence check passed for "binutils-2.15.92.0.2"

Check: Package existence for "gcc-3.4.6" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   gcc-3.4.6                 failed    
  node1         missing                   gcc-3.4.6                 failed    
Result: Package existence check failed for "gcc-3.4.6"

Check: Package existence for "libaio-0.3.105 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   libaio-0.3.105 (i386)     failed    
  node1         missing                   libaio-0.3.105 (i386)     failed    
Result: Package existence check failed for "libaio-0.3.105 (i386)"

Check: Package existence for "libaio-0.3.105 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libaio-0.3.107-10.el6 (x86_64)  libaio-0.3.105 (x86_64)   passed    
  node1         libaio-0.3.107-10.el6 (x86_64)  libaio-0.3.105 (x86_64)   passed    
Result: Package existence check passed for "libaio-0.3.105 (x86_64)"

Check: Package existence for "glibc-2.3.4-2.41 (i686)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   glibc-2.3.4-2.41 (i686)   failed    
  node1         missing                   glibc-2.3.4-2.41 (i686)   failed    
Result: Package existence check failed for "glibc-2.3.4-2.41 (i686)"

Check: Package existence for "glibc-2.3.4-2.41 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         glibc-2.12-1.80.el6 (x86_64)  glibc-2.3.4-2.41 (x86_64)  passed    
  node1         glibc-2.12-1.80.el6 (x86_64)  glibc-2.3.4-2.41 (x86_64)  passed    
Result: Package existence check passed for "glibc-2.3.4-2.41 (x86_64)"

Check: Package existence for "compat-libstdc++-33-3.2.3 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   compat-libstdc++-33-3.2.3 (i386)  failed    
  node1         missing                   compat-libstdc++-33-3.2.3 (i386)  failed    
Result: Package existence check failed for "compat-libstdc++-33-3.2.3 (i386)"

Check: Package existence for "compat-libstdc++-33-3.2.3 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   compat-libstdc++-33-3.2.3 (x86_64)  failed    
  node1         missing                   compat-libstdc++-33-3.2.3 (x86_64)  failed    
Result: Package existence check failed for "compat-libstdc++-33-3.2.3 (x86_64)"

Check: Package existence for "elfutils-libelf-0.97 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         elfutils-libelf-0.152-1.el6 (x86_64)  elfutils-libelf-0.97 (x86_64)  passed    
  node1         elfutils-libelf-0.152-1.el6 (x86_64)  elfutils-libelf-0.97 (x86_64)  passed    
Result: Package existence check passed for "elfutils-libelf-0.97 (x86_64)"

Check: Package existence for "elfutils-libelf-devel-0.97" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   elfutils-libelf-devel-0.97  failed    
  node1         missing                   elfutils-libelf-devel-0.97  failed    
Result: Package existence check failed for "elfutils-libelf-devel-0.97"

Check: Package existence for "glibc-common-2.3.4" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         glibc-common-2.12-1.80.el6  glibc-common-2.3.4        passed    
  node1         glibc-common-2.12-1.80.el6  glibc-common-2.3.4        passed    
Result: Package existence check passed for "glibc-common-2.3.4"

Check: Package existence for "glibc-devel-2.3.4 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   glibc-devel-2.3.4 (x86_64)  failed    
  node1         missing                   glibc-devel-2.3.4 (x86_64)  failed    
Result: Package existence check failed for "glibc-devel-2.3.4 (x86_64)"

Check: Package existence for "glibc-headers-2.3.4" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   glibc-headers-2.3.4       failed    
  node1         missing                   glibc-headers-2.3.4       failed    
Result: Package existence check failed for "glibc-headers-2.3.4"

Check: Package existence for "gcc-c++-3.4.6" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   gcc-c++-3.4.6             failed    
  node1         missing                   gcc-c++-3.4.6             failed    
Result: Package existence check failed for "gcc-c++-3.4.6"

Check: Package existence for "libaio-devel-0.3.105 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   libaio-devel-0.3.105 (i386)  failed    
  node1         missing                   libaio-devel-0.3.105 (i386)  failed    
Result: Package existence check failed for "libaio-devel-0.3.105 (i386)"

Check: Package existence for "libaio-devel-0.3.105 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   libaio-devel-0.3.105 (x86_64)  failed    
  node1         missing                   libaio-devel-0.3.105 (x86_64)  failed    
Result: Package existence check failed for "libaio-devel-0.3.105 (x86_64)"

Check: Package existence for "libgcc-3.4.6 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   libgcc-3.4.6 (i386)       failed    
  node1         missing                   libgcc-3.4.6 (i386)       failed    
Result: Package existence check failed for "libgcc-3.4.6 (i386)"

Check: Package existence for "libgcc-3.4.6 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libgcc-4.4.6-4.el6 (x86_64)  libgcc-3.4.6 (x86_64)     passed    
  node1         libgcc-4.4.6-4.el6 (x86_64)  libgcc-3.4.6 (x86_64)     passed    
Result: Package existence check passed for "libgcc-3.4.6 (x86_64)"

Check: Package existence for "libstdc++-3.4.6 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   libstdc++-3.4.6 (i386)    failed    
  node1         missing                   libstdc++-3.4.6 (i386)    failed    
Result: Package existence check failed for "libstdc++-3.4.6 (i386)"

Check: Package existence for "libstdc++-3.4.6 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         libstdc++-4.4.6-4.el6 (x86_64)  libstdc++-3.4.6 (x86_64)  passed    
  node1         libstdc++-4.4.6-4.el6 (x86_64)  libstdc++-3.4.6 (x86_64)  passed    
Result: Package existence check passed for "libstdc++-3.4.6 (x86_64)"

Check: Package existence for "libstdc++-devel-3.4.6 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   libstdc++-devel-3.4.6 (x86_64)  failed    
  node1         missing                   libstdc++-devel-3.4.6 (x86_64)  failed    
Result: Package existence check failed for "libstdc++-devel-3.4.6 (x86_64)"

Check: Package existence for "sysstat-5.0.5" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         sysstat-9.0.4-20.el6      sysstat-5.0.5             passed    
  node1         sysstat-9.0.4-20.el6      sysstat-5.0.5             passed    
Result: Package existence check passed for "sysstat-5.0.5"

Check: Package existence for "unixODBC-2.2.11 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   unixODBC-2.2.11 (i386)    failed    
  node1         missing                   unixODBC-2.2.11 (i386)    failed    
Result: Package existence check failed for "unixODBC-2.2.11 (i386)"

Check: Package existence for "unixODBC-2.2.11 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         unixODBC-2.2.14-11.el6 (x86_64)  unixODBC-2.2.11 (x86_64)  passed    
  node1         unixODBC-2.2.14-11.el6 (x86_64)  unixODBC-2.2.11 (x86_64)  passed    
Result: Package existence check passed for "unixODBC-2.2.11 (x86_64)"

Check: Package existence for "unixODBC-devel-2.2.11 (i386)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   unixODBC-devel-2.2.11 (i386)  failed    
  node1         missing                   unixODBC-devel-2.2.11 (i386)  failed    
Result: Package existence check failed for "unixODBC-devel-2.2.11 (i386)"

Check: Package existence for "unixODBC-devel-2.2.11 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   unixODBC-devel-2.2.11 (x86_64)  failed    
  node1         missing                   unixODBC-devel-2.2.11 (x86_64)  failed    
Result: Package existence check failed for "unixODBC-devel-2.2.11 (x86_64)"

Check: Package existence for "pdksh-5.2.14" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         missing                   pdksh-5.2.14              failed    
  node1         missing                   pdksh-5.2.14              failed    
Result: Package existence check failed for "pdksh-5.2.14"

Check: Package existence for "expat-1.95.7 (x86_64)" 
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         expat-2.0.1-11.el6_2 (x86_64)  expat-1.95.7 (x86_64)     passed    
  node1         expat-2.0.1-11.el6_2 (x86_64)  expat-1.95.7 (x86_64)     passed    
Result: Package existence check passed for "expat-1.95.7 (x86_64)"

Checking for multiple users with UID value 0
Result: Check for multiple users with UID value 0 passed 

Check: Current group ID 
Result: Current group ID check passed
Checking Core file name pattern consistency...
Core file name pattern consistency check passed.

Checking to make sure user "grid" is not in "root" group
  Node Name     Status                    Comment                 
  ------------  ------------------------  ------------------------
  node2         does not exist            passed                  
  node1         does not exist            passed                  
Result: User "grid" is not part of "root" group. Check passed

Check default user file creation mask
  Node Name     Available                 Required                  Comment   
  ------------  ------------------------  ------------------------  ----------
  node2         0022                      0022                      passed    
  node1         0022                      0022                      passed    
Result: Default user file creation mask check passed

Starting Clock synchronization checks using Network Time Protocol(NTP)...

NTP Configuration file check started...
Network Time Protocol(NTP) configuration file not found on any of the nodes. Oracle Cluster Time Synchronization Service(CTSS) can be used instead of NTP for time synchronization on the cluster nodes

Result: Clock synchronization check using Network Time Protocol(NTP) passed

Fixup information has been generated for following node(s):
node2,node1
Please run the following script on each node as "root" user to execute the fixups:
'/tmp/CVU_11.2.0.1.0_grid/runfixup.sh'

Pre-check for cluster services setup was unsuccessful on all the nodes. 
View Code

创建磁盘组,分别用来创建安装数据库的磁盘组和创建闪回区的磁盘组,ASM磁盘组的创建可以通过你ASMCA图形界面创建.

在安装grid infrastructure之前,进行验证的时候,如果出现Device Check for ASM警告信息,忽略即可;

安装oracle软件

安装数据库

--------------

OCR会自动备份

voting disk需要手工备份 

--------------

如何验证负载均衡和failover?

负载均衡是由SCAN自行分配解决的.

模拟failover,使节点中的其中一个instance给shutdown掉,然后所有的请求都会自动切换到另外运行的节点上来.

要想实验loadbalance and failover,必须安装配置scanip 

------------------------------------------------------------------------------------

DataGuard的安装与配置

>>只需要安装软件,不需要安装数据库

使用ASMCA创建ASM磁盘组.

------------------------------------------------------------------------------------

主库与备库同步

包含两部分:文件同步、数据同步 

文件同步,通过创建表空间的方式来测试;

数据同步,通过添加修改删除记录的方式来测试同步;

------------------------------------------------------------------------------------

主库与备库同步切换

SQL> show parameter fal

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
fal_client                           string
fal_server                           string
View Code 

RAC的主库,RAC的备库;在将备库切换成主库之前,需要将RAC备库中的其他所有节点关闭,只有一个节点进行相关操作.

主备切换的先后顺序:先将主库切换成备库,此时备库也是备库,这个阶段是一个群龙无首,全是备库的阶段.

DataGuard中有算中模式:最大性能、最大保护、最高可用

------------------------------------------------------------------------------------

主库切换备库,备库切换主库

将备库switchover成主库
alter database commit to switchover to primary;

将主库switchover成备库
alter database commit to switchover to physical standby with session shutdown;
View Code

------------------------------------------------------------------------------------ 

--开启

--停掉REDO APPLY(先停掉REDO APPLY,再将备库切换成主库.这样操作,少报错;)
alter database recover managed standby database cancel; 

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<DataGuard安装与配置>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

注意:DataGuard只需要安装grid、oracle软件,不需要安装数据库.

DataGuard机器的磁盘情况:ASM共享磁盘组GRIDDG、DATA、FLASH,两外还要配置一块硬盘,用来存放主库的备份信息. 而且主库上(一般node1),也需要配置一块空闲磁盘,用来存放主库的备份信息,将来需要将主库上的备份信息ftp到DataGuard上去.

普通的磁盘(非共享磁盘),在进行格式化分区之后,需要做成文件系统,才可使用.做成文件系统的命令mkfs.ext4 /dev/sdb1进行文件系统的制作.(/dev/sdb1注意不要搞错);然后文件系统做完了之后,需要到根目录(/)下创建一个挂载点

  >#mkdir rman_backup

  >#chown -R oracle:oinstall rman_backup/

  >#mount -t ext4 /dev/sdb1 /rman_backup/

  >cat /etc/fstab  

[root@node1 ~]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Thu Jun 27 23:44:22 2013
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=02ff7b7b-1f51-48a5-bd19-2e0bdb071ffb /                       ext4    defaults        1 1
UUID=91e314c2-cfe2-4e7f-b8a9-b07134233679 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   size=3000m      0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
View Code

   在/etc/fstab中添加一条记录,用来挂载新添加的磁盘,将来机器重启的话,就会自动挂载此硬盘.

原文地址:https://www.cnblogs.com/arcer/p/3147624.html