了解Maclean Liu|向Maclean Liu提问 Oracle ALLSTARS 全明星(群内有多位Oracle高级售后support,N位OCM和ACE) QQ群 # QQ群号:23549328 # 已经升级到 2000人群,空位多多。欢迎有一定基础的Oracle骨友加入,现在入群需要经过Maclean的技术面试,欢迎面试,请加QQ号:47079569 为好友参加面试 2群基础群 适合刚入门的同学,会共享最佳入门实践和资料 QQ群 # QQ群号:171092051 # 已经升级到 500人的超级群,空位多多,无需面试

在AIX 6.1上安装11gR2 RAC

以下在AIX 6.1+Veritas CFS环境上安装11gR2 RAC :

1.  11gR2 GI/RAC安装预备工作

1.1       安装环境:

硬件环境为2节点IBM p系列小型机,每个节点物理CPU数目32个,内存509440 MB,交换空间32768MB操作系统版本为64bit AIX 6.1(6100-06-09-1228)。    
Setting Value
Machine and version AIX macleandb-007 1 6 00F71C964C00
Fully qualified host name macleandb-007
Platform 64-bit AIX
O/S Version 6.1.0.0
O/S Maintenance Level 6100-06
O/S Service Pack Level 6100-06-09-1228
Logged in as oracle
Last run as uid=1101(oracle) gid=1000(oinstall) groups=1000(oinstall),1200(dba),1300(asmdba)
Executed as Oracle home owner? Yes
RDA home directory /oracle/rda
RDA work directory /oracle/rda
Output file prefix RDA
Output file directory /oracle/rda/output
Setup profile DB11g
Perform network pings? No
 
Item Value
Processor(s) 32 Processor(s) Installed [01]: PowerPC_POWER7 3864 MHz [02]: PowerPC_POWER7 3864 MHz [03]: PowerPC_POWER7 3864 MHz [04]: PowerPC_POWER7 3864 MHz [05]: PowerPC_POWER7 3864 MHz [06]: PowerPC_POWER7 3864 MHz [07]: PowerPC_POWER7 3864 MHz [08]: PowerPC_POWER7 3864 MHz [09]: PowerPC_POWER7 3864 MHz [10]: PowerPC_POWER7 3864 MHz [11]: PowerPC_POWER7 3864 MHz [12]: PowerPC_POWER7 3864 MHz [13]: PowerPC_POWER7 3864 MHz [14]: PowerPC_POWER7 3864 MHz [15]: PowerPC_POWER7 3864 MHz [16]: PowerPC_POWER7 3864 MHz [17]: PowerPC_POWER7 3864 MHz [18]: PowerPC_POWER7 3864 MHz [19]: PowerPC_POWER7 3864 MHz [20]: PowerPC_POWER7 3864 MHz [21]: PowerPC_POWER7 3864 MHz [22]: PowerPC_POWER7 3864 MHz [23]: PowerPC_POWER7 3864 MHz [24]: PowerPC_POWER7 3864 MHz [25]: PowerPC_POWER7 3864 MHz [26]: PowerPC_POWER7 3864 MHz [27]: PowerPC_POWER7 3864 MHz [28]: PowerPC_POWER7 3864 MHz [29]: PowerPC_POWER7 3864 MHz [30]: PowerPC_POWER7 3864 MHz [31]: PowerPC_POWER7 3864 MHz [32]: PowerPC_POWER7 3864 MHz
Total Physical Memory 509440 MB
Swap: Max Size 32768 MiB
Swap: Percent Used 1%
   

1.1       网络环境:

  对于每台机器,需要配置: 1 个机器固有IP 地址(Public IP)和对应的机器名,在DNS 中注册,或者写到 /etc/hosts 文件中。 1 个虚拟IP 地址(Virtual IP)和对应的服务名,在DNS 中注册,或者写到 /etc/hosts 文件中。(与Public IP 不同,但必须处于同一网段) 1 个互联IP 地址(Private IP)和对应的私有名,写到/etc/hosts 文件中。(这类IP 地址建议采用如: 172.168.*.* 或192.168.*.*网段的地址) 3 个SCAN IP地址,在DNS中注册,不适用DNS的情况下配置1个SCAN IP到/etc/hosts      中  
Node Interface Name Type Ip Address Registered in
macleandb-007 macleandb-007 Public 192.168.18.227 /etc/hosts
macleandb-008 macleandb-008 Public 192.168.18.231 /etc/hosts
macleandb-007 macleandb-007-vip VIP 192.168.18.226 /etc/hosts
macleandb-008 macleandb-008-vip VIP 192.168.18.230 /etc/hosts
macleandb-008 macleandb-scan1 SCAN IP 192.168.18.224 /etc/hosts
macleandb-007 macleandb-007-priva Private 172.168.1.101 /etc/hosts
macleandb-008 macleandb-008-priva Private 172.168.1.102 /etc/hosts
macleandb-007 macleandb-007-privb Private 172.168.2.101 /etc/hosts
macleandb-008 macleandb-008-privb Private 172.168.2.102 /etc/hosts
    使用FTP测试网络传输速率,2节点传输文件平均速度为50M/s:    
macleandb-007 # scp p10404530_112030_AIX64-5L_1of7.zip  macleandb-008-priva:/oracleThe authenticity of host 'macleandb-008-priva (172.168.1.102)' can't be established.RSA key fingerprint is b1:2e:4f:40:7f:46:39:2d:ae:21:86:6f:75:bb:92:32.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'macleandb-008-priva,172.168.1.102' (RSA) to the list of known hosts.p10404530_112030_AIX64-5L_1of7.zip                                                                                                     20%  343MB  47.3MB/s   00:28 ETAKilled by signal 2.    macleandb-007 # scp p10404530_112030_AIX64-5L_1of7.zip  macleandb-008-privb:/oracle The authenticity of host 'macleandb-008-privb (172.168.2.102)' can't be established. RSA key fingerprint is b1:2e:4f:40:7f:46:39:2d:ae:21:86:6f:75:bb:92:32. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'macleandb-008-privb,172.168.2.102' (RSA) to the list of known hosts. p10404530_112030_AIX64-5L_1of7.zip                                                                                                     11%  202MB  51.2MB/s   00:28 ETAKilled by signal 2. macleandb-007 #   macleandb-007 # scp p10404530_112030_AIX64-5L_1of7.zip  macleandb-008:/oracle p10404530_112030_AIX64-5L_1of7.zip                                                                                                     17%  299MB  50.6MB/s   00:27 ETAKilled by signal 2.
     

1.1       缺省网关:

在每台机器上都要对于公网接口定义缺省网关。 定义网关是为了跨网段的客户端和应用服务器可以访问数据库服务器;如果操作系统已经 配置了静态或动态路由,此处无需再配置网关。    

1.2       时钟同步:

11.2中使用GI自带的CTSSD节点间时间同步服务,不开启NTPD时间同步守护进程。  
NTP is not required for 11gR2 since we have the Cluster Time Synchronization Service (CTSD), but if youare using NTP you need to use it with â..-xâ.. option:Checking: ps -ef |grep ntpsIf it has no -x option do below steps:
  • · a. Open the /etc/rc.tcpip file, and locate the following line: start /usr/sbin/xntpd "$src_running"
  • · b. Change the line to the following: start /usr/sbin/xntpd "$src_running" "-x"
  • · c. Save the file.
         

1.3       用户和组:

创建必要的grid和oracle用户,以及oinstall、dba等组,保持在2个节点间的UID、GID一致  
macleandb-007 # mkgroup -'A' id='1000' adms='root' oinstallmacleandb-007 # mkgroup -'A' id='1100' adms='root' asmadminmacleandb-007 # mkgroup -'A' id='1200' adms='root' dbamacleandb-007 # mkgroup -'A' id='1300' adms='root' asmdbamacleandb-007 # mkgroup -'A' id='1301' adms='root' asmopermacleandb-007 # mkuser id='1100' pgrp='oinstall' groups='asmadmin,asmdba,asmoper' home='/home/grid' gridmacleandb-007 # mkuser id='1101' pgrp='oinstall' groups='dba,asmdba' home='/home/oracle' oracle macleandb-007 # mkdir -p /oracle/app/product/11.2.0/db_1 macleandb-007 # mkdir -p /oracle/app/product/grid macleandb-007 # chown oracle:oinstall /oracle/app/product/11.2.0/db_1 macleandb-007 # chown grid:oinstall /oracle/app/product/grid macleandb-007 # chmod 755 /oracle/app/product/11.2.0/db_1 macleandb-007 # chmod 755 /oracle/app/product/grid     macleandb-008 # mkgroup -'A' id='1000' adms='root' oinstall macleandb-008 # mkgroup -'A' id='1100' adms='root' asmadmin macleandb-008 # mkgroup -'A' id='1200' adms='root' dba macleandb-008 # mkgroup -'A' id='1300' adms='root' asmdba macleandb-008 # mkgroup -'A' id='1301' adms='root' asmoper macleandb-008 # mkuser id='1100' pgrp='oinstall' groups='asmadmin,asmdba,asmoper' home='/home/grid' grid macleandb-008 #  mkuser id='1101' pgrp='oinstall' groups='dba,asmdba' home='/home/oracle' oracle macleandb-008 #  mkdir -p /oracle/app/product/11.2.0/db_1 macleandb-008 # mkdir -p /oracle/app/product/grid macleandb-008 # chown oracle:oinstall /oracle/app/product/11.2.0/db_1 macleandb-008 # chown grid:oinstall /oracle/app/product/grid macleandb-008 # chmod 755 /oracle/app/product/11.2.0/db_1 macleandb-008 # chmod 755 /oracle/app/product/grid               macleandb-007 # id oracle uid=1101(oracle) gid=1000(oinstall) groups=1200(dba),1300(asmdba)   macleandb-007 # id grid uid=1100(grid) gid=1000(oinstall) groups=1100(asmadmin),1300(asmdba),1301(asmoper)   macleandb-008 # id oracle uid=1101(oracle) gid=1000(oinstall) groups=1200(dba),1300(asmdba)   macleandb-008 # id grid uid=1100(grid) gid=1000(oinstall) groups=1100(asmadmin),1300(asmdba),1301(asmoper)  
    赋予grid用户CAP_NUMA_ATTACH等权限:    
macleandb-008 # lsuser -a capabilities gridgridmacleandb-008 # chuser capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE gridmacleandb-008 # lsuser -a capabilities gridgrid capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE  
   

1.1       用户profile:

  在profile文件中为Oracle和Grid用户配置必要的环境变量参数:  
Grid profileumask 022export AIXTHREAD_SCOPE=Sexport ORACLE_HOME=/oracle/app/product/grid export ORACLE_BASE=/oracle/app export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH export CRS_HOME=$ORACLE_HOME export LIBPATH=$ORACLE_HOME/lib       oracle profile   umask 022   export AIXTHREAD_SCOPE=S export ORACLE_HOME=/oracle/app/product/11.2.0/db_1 export ORACLE_BASE=/oracle/app export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH export LIBPATH=$ORACLE_HOME/lib export ORA_NLS10=$ORACLE_HOME/nls/data export NLS_LANG="Simplified Chinese"_China.AL32UTF8  
     

1.1       配置oracle和grid用户的shell limit参数:

  可以通过smitty chuser或者 修改/etc/security/limits配置文件配置用户的shell limit参数:
macleandb-007 # cat /etc/security/limitsoracle:fsize = -1data = -1stack = -1 core = -1 rss = -1 nofiles = -1   grid: fsize = -1 data = -1 stack = -1 core = -1 rss = -1 nofiles = -1   $ ulimit -a time(seconds)        unlimited file(blocks)         unlimited data(kbytes)         unlimited stack(kbytes)        4194304 memory(kbytes)       unlimited coredump(blocks)     unlimited nofiles(descriptors) unlimited threads(per process) unlimited processes(per user)  unlimited   macleandb-008 # cat /etc/security/limits   oracle: fsize = -1 data = -1 stack = -1 core = -1 rss = -1 nofiles = -1   grid: fsize = -1 data = -1 stack = -1 core = -1 rss = -1 nofiles = -1     $ ulimit -a time(seconds)        unlimited file(blocks)         unlimited data(kbytes)         unlimited stack(kbytes)        4194304 memory(kbytes)       unlimited coredump(blocks)     unlimited nofiles(descriptors) unlimited threads(per process) unlimited processes(per user)  unlimited
     

1.2       配置oracle和grid用户的等价性

  在macleandb-007、macleandb-008 2节点之间配置oracle和grid用户的等价性。  
$ rm -rf $HOME/.ssh$ ./sshUserSetup.sh -user grid -hosts "macleandb-007 macleandb-008"  -advanced PromptPassphrase  The output of this script is also logged into /tmp/sshUserSetup_2012-12-05-01-27-09.log Hosts are macleandb-007 macleandb-008 user is grid Platform:- AIX Checking if the remote hosts are reachable PING macleandb-007: (192.168.18.227): 56 data bytes 64 bytes from 192.168.18.227: icmp_seq=0 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=1 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=2 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=3 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=4 ttl=255 time=0 ms   ----macleandb-007 PING Statistics---- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 0/0/0 ms PING macleandb-008: (192.168.18.231): 56 data bytes 64 bytes from 192.168.18.231: icmp_seq=0 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=1 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=2 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=3 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=4 ttl=255 time=0 ms   ----macleandb-008 PING Statistics---- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 0/0/0 ms Remote host reachability check succeeded. The following hosts are reachable: macleandb-007 macleandb-008. The following hosts are not reachable: . All hosts are reachable. Proceeding further... firsthost macleandb-007 numhosts 2 The script will setup SSH connectivity from the host macleandb-007 to all the remote hosts. After the script is executed, the user can use SSH to run commands on the remote hosts or copy files between this host macleandb-007 and the remote hosts without being prompted for passwords or confirmations.   NOTE 1: As part of the setup procedure, this script will use ssh and scp to copy files between the local host and the remote hosts. Since the script does not store passwords, you may be prompted for the passwords during the execution of the script whenever ssh or scp is invoked.   NOTE 2: AS PER SSH REQUIREMENTS, THIS SCRIPT WILL SECURE THE USER HOME DIRECTORY AND THE .ssh DIRECTORY BY REVOKING GROUP AND WORLD WRITE PRIVILEDGES TO THESE directories.   Do you want to continue and let the script make the above mentioned changes (yes/no)? yes   The user chose yes Please specify if you want to specify a passphrase for the private key this script will create for the local host. Passphrase is used to encrypt the private key and makes SSH much more secure. Type 'yes' or 'no' and then press enter. In case you press 'yes', you would need to enter the passphrase whenever the script executes ssh or scp. The estimated number of times the user would be prompted for a passphrase is 4. In addition, if the private-public files are also newly created, the user would have to specify the passphrase on one additional occasion. Enter 'yes' or 'no'. yes   The user chose yes Creating .ssh directory on local host, if not present already Creating authorized_keys file on local host Changing permissions on authorized_keys to 644 on local host Creating known_hosts file on local host Changing permissions on known_hosts to 644 on local host Creating config file on local host If a config file exists already at /home/grid/.ssh/config, it would be backed up to /home/grid/.ssh/config.backup. Removing old private/public keys on local host Running SSH keygen on local host Enter passphrase (empty for no passphrase): Enter same passphrase again: Generating public/private rsa key pair. Your identification has been saved in /home/grid/.ssh/id_rsa. Your public key has been saved in /home/grid/.ssh/id_rsa.pub. The key fingerprint is: a6:87:38:26:11:7a:1e:d6:4a:eb:2b:6d:54:68:bc:29 grid@macleandb-007 The key's randomart image is: +--[ RSA 1024]----+ |                 | |                 | | ...             | | .+o.            | |..*+.   S        | |E=+= . +         | | += + o .        | |..oo . .         | | oo.             | +-----------------+ Creating .ssh directory and setting permissions on remote host macleandb-007 THE SCRIPT WOULD ALSO BE REVOKING WRITE PERMISSIONS FOR group AND others ON THE HOME DIRECTORY FOR grid. THIS IS AN SSH REQUIREMENT. The script would create /home/grid/.ssh/config file on remote host macleandb-007. If a config file exists already at /home/grid/.ssh/config, it would be backed up to /home/grid/.ssh/config.backup. The user may be prompted for a password here since the script would be running SSH on host macleandb-007. Warning: Permanently added 'macleandb-007,192.168.18.227' (RSA) to the list of known hosts. grid@macleandb-007's password: Done with creating .ssh directory and setting permissions on remote host macleandb-007. Creating .ssh directory and setting permissions on remote host macleandb-008 THE SCRIPT WOULD ALSO BE REVOKING WRITE PERMISSIONS FOR group AND others ON THE HOME DIRECTORY FOR grid. THIS IS AN SSH REQUIREMENT. The script would create /home/grid/.ssh/config file on remote host macleandb-008. If a config file exists already at /home/grid/.ssh/config, it would be backed up to /home/grid/.ssh/config.backup. The user may be prompted for a password here since the script would be running SSH on host macleandb-008. Warning: Permanently added 'macleandb-008,192.168.18.231' (RSA) to the list of known hosts. grid@macleandb-008's password: Done with creating .ssh directory and setting permissions on remote host macleandb-008. Copying local host public key to the remote host macleandb-007 The user may be prompted for a password or passphrase here since the script would be using SCP for host macleandb-007. grid@macleandb-007's password: Done copying local host public key to the remote host macleandb-007 Copying local host public key to the remote host macleandb-008 The user may be prompted for a password or passphrase here since the script would be using SCP for host macleandb-008. grid@macleandb-008's password: Done copying local host public key to the remote host macleandb-008 Creating keys on remote host macleandb-007 if they do not exist already. This is required to setup SSH on host macleandb-007.   Creating keys on remote host macleandb-008 if they do not exist already. This is required to setup SSH on host macleandb-008. Generating public/private rsa key pair. Your identification has been saved in .ssh/id_rsa. Your public key has been saved in .ssh/id_rsa.pub. The key fingerprint is: 57:10:a3:c8:c6:ec:55:3f:1c:ea:c3:c5:ef:bf:23:b6 grid@macleandb-008 The key's randomart image is: +--[ RSA 1024]----+ |          =..    | |     + . o B .   | |      * o . B    | |     o . o o o   | |      . S =   .  | |         . . .   | |              .  | |             o o | |            .Eo.+| +-----------------+ Updating authorized_keys file on remote host macleandb-007 Updating known_hosts file on remote host macleandb-007 The script will run SSH on the remote machine macleandb-007. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. Updating authorized_keys file on remote host macleandb-008 Updating known_hosts file on remote host macleandb-008 The script will run SSH on the remote machine macleandb-008. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. cat: 0652-050 Cannot open /home/grid/.ssh/known_hosts.tmp. cat: 0652-050 Cannot open /home/grid/.ssh/authorized_keys.tmp. SSH setup is complete.   ------------------------------------------------------------------------ Verifying SSH setup =================== The script will now run the date command on the remote nodes using ssh to verify if ssh is setup correctly. IF THE SETUP IS CORRECTLY SETUP, THERE SHOULD BE NO OUTPUT OTHER THAN THE DATE AND SSH SHOULD NOT ASK FOR PASSWORDS. If you see any output other than date or are prompted for the password, ssh is not setup correctly and you will need to resolve the issue and set up ssh again. The possible causes for failure could be: 1. The server settings in /etc/ssh/sshd_config file do not allow ssh for user grid. 2. The server may have disabled public key based authentication. 3. The client public key on the server may be outdated. 4. /home/grid or /home/grid/.ssh on the remote host may not be owned by grid. 5. User may not have passed -shared option for shared remote users or may be passing the -shared option for non-shared remote users. 6. If there is output in addition to the date, but no password is asked, it may be a security alert shown as part of company policy. Append the additional text to the <OMS HOME>/sysman/prov/resources/ignoreMessages.txt file. ------------------------------------------------------------------------ --macleandb-007:-- Running /usr/bin/ssh -x -l grid macleandb-007 date to verify SSH connectivity has been setup from local host to macleandb-007. IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Please note that being prompted for a passphrase may be OK but being prompted for a password is ERROR. The script will run SSH on the remote machine macleandb-007. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. Wed Dec  5 01:28:15 GMT+08:00 2012 ------------------------------------------------------------------------ --macleandb-008:-- Running /usr/bin/ssh -x -l grid macleandb-008 date to verify SSH connectivity has been setup from local host to macleandb-008. IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Please note that being prompted for a passphrase may be OK but being prompted for a password is ERROR. The script will run SSH on the remote machine macleandb-008. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. Wed Dec  5 01:28:20 GMT+08:00 2012 ------------------------------------------------------------------------ ------------------------------------------------------------------------ Verifying SSH connectivity has been setup from macleandb-007 to macleandb-007 IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Wed Dec  5 01:28:16 GMT+08:00 2012 ------------------------------------------------------------------------ ------------------------------------------------------------------------ Verifying SSH connectivity has been setup from macleandb-007 to macleandb-008 IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Wed Dec  5 01:28:21 GMT+08:00 2012 ------------------------------------------------------------------------ -Verification from complete- SSH verification complete.             $ ./sshUserSetup.sh -user oracle -hosts "macleandb-007 macleandb-008"  -advanced PromptPassphrase The output of this script is also logged into /tmp/sshUserSetup_2012-12-05-01-31-18.log Hosts are macleandb-007 macleandb-008 user is oracle Platform:- AIX Checking if the remote hosts are reachable PING macleandb-007: (192.168.18.227): 56 data bytes 64 bytes from 192.168.18.227: icmp_seq=0 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=1 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=2 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=3 ttl=255 time=0 ms 64 bytes from 192.168.18.227: icmp_seq=4 ttl=255 time=0 ms   ----macleandb-007 PING Statistics---- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 0/0/0 ms PING macleandb-008: (192.168.18.231): 56 data bytes 64 bytes from 192.168.18.231: icmp_seq=0 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=1 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=2 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=3 ttl=255 time=0 ms 64 bytes from 192.168.18.231: icmp_seq=4 ttl=255 time=0 ms   ----macleandb-008 PING Statistics---- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max = 0/0/0 ms Remote host reachability check succeeded. The following hosts are reachable: macleandb-007 macleandb-008. The following hosts are not reachable: . All hosts are reachable. Proceeding further... firsthost macleandb-007 numhosts 2 The script will setup SSH connectivity from the host macleandb-007 to all the remote hosts. After the script is executed, the user can use SSH to run commands on the remote hosts or copy files between this host macleandb-007 and the remote hosts without being prompted for passwords or confirmations.   NOTE 1: As part of the setup procedure, this script will use ssh and scp to copy files between the local host and the remote hosts. Since the script does not store passwords, you may be prompted for the passwords during the execution of the script whenever ssh or scp is invoked.   NOTE 2: AS PER SSH REQUIREMENTS, THIS SCRIPT WILL SECURE THE USER HOME DIRECTORY AND THE .ssh DIRECTORY BY REVOKING GROUP AND WORLD WRITE PRIVILEDGES TO THESE directories.   Do you want to continue and let the script make the above mentioned changes (yes/no)? yes   The user chose yes Please specify if you want to specify a passphrase for the private key this script will create for the local host. Passphrase is used to encrypt the private key and makes SSH much more secure. Type 'yes' or 'no' and then press enter. In case you press 'yes', you would need to enter the passphrase whenever the script executes ssh or scp. The estimated number of times the user would be prompted for a passphrase is 4. In addition, if the private-public files are also newly created, the user would have to specify the passphrase on one additional occasion. Enter 'yes' or 'no'. yes   The user chose yes Creating .ssh directory on local host, if not present already Creating authorized_keys file on local host Changing permissions on authorized_keys to 644 on local host Creating known_hosts file on local host Changing permissions on known_hosts to 644 on local host Creating config file on local host If a config file exists already at /home/oracle/.ssh/config, it would be backed up to /home/oracle/.ssh/config.backup. Removing old private/public keys on local host Running SSH keygen on local host Enter passphrase (empty for no passphrase): Enter same passphrase again: Generating public/private rsa key pair. Your identification has been saved in /home/oracle/.ssh/id_rsa. Your public key has been saved in /home/oracle/.ssh/id_rsa.pub. The key fingerprint is: de:e1:bd:ac:7d:f0:25:68:3c:80:33:24:53:ae:31:fb oracle@macleandb-007 The key's randomart image is: +--[ RSA 1024]----+ |       ..        | |      o..        | |      o+..       | |       =+ .      | |      o So.o .   | |       o o o* . .| |        E o..+ o | |           o .o  | |          ..+.   | +-----------------+ Creating .ssh directory and setting permissions on remote host macleandb-007 THE SCRIPT WOULD ALSO BE REVOKING WRITE PERMISSIONS FOR group AND others ON THE HOME DIRECTORY FOR oracle. THIS IS AN SSH REQUIREMENT. The script would create /home/oracle/.ssh/config file on remote host macleandb-007. If a config file exists already at /home/oracle/.ssh/config, it would be backed up to /home/oracle/.ssh/config.backup. The user may be prompted for a password here since the script would be running SSH on host macleandb-007. Warning: Permanently added 'macleandb-007,192.168.18.227' (RSA) to the list of known hosts. oracle@macleandb-007's password: Done with creating .ssh directory and setting permissions on remote host macleandb-007. Creating .ssh directory and setting permissions on remote host macleandb-008 THE SCRIPT WOULD ALSO BE REVOKING WRITE PERMISSIONS FOR group AND others ON THE HOME DIRECTORY FOR oracle. THIS IS AN SSH REQUIREMENT. The script would create /home/oracle/.ssh/config file on remote host macleandb-008. If a config file exists already at /home/oracle/.ssh/config, it would be backed up to /home/oracle/.ssh/config.backup. The user may be prompted for a password here since the script would be running SSH on host macleandb-008. Warning: Permanently added 'macleandb-008,192.168.18.231' (RSA) to the list of known hosts. oracle@macleandb-008's password: Done with creating .ssh directory and setting permissions on remote host macleandb-008. Copying local host public key to the remote host macleandb-007 The user may be prompted for a password or passphrase here since the script would be using SCP for host macleandb-007. oracle@macleandb-007's password: Done copying local host public key to the remote host macleandb-007 Copying local host public key to the remote host macleandb-008 The user may be prompted for a password or passphrase here since the script would be using SCP for host macleandb-008. oracle@macleandb-008's password: Done copying local host public key to the remote host macleandb-008 Creating keys on remote host macleandb-007 if they do not exist already. This is required to setup SSH on host macleandb-007.   Creating keys on remote host macleandb-008 if they do not exist already. This is required to setup SSH on host macleandb-008. Generating public/private rsa key pair. Your identification has been saved in .ssh/id_rsa. Your public key has been saved in .ssh/id_rsa.pub. The key fingerprint is: b2:b1:d7:2d:2a:bf:d9:76:5c:2a:6e:97:d9:7d:7c:3e oracle@macleandb-008 The key's randomart image is: +--[ RSA 1024]----+ |                 | |                 | |                 | |                 | |      o S        | |       = . .  .  | |      o . o..* o | |      .. ++.B .E=| |       o==o+   .=| +-----------------+ Updating authorized_keys file on remote host macleandb-007 Updating known_hosts file on remote host macleandb-007 The script will run SSH on the remote machine macleandb-007. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. Updating authorized_keys file on remote host macleandb-008 Updating known_hosts file on remote host macleandb-008 The script will run SSH on the remote machine macleandb-008. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. cat: 0652-050 Cannot open /home/oracle/.ssh/known_hosts.tmp. cat: 0652-050 Cannot open /home/oracle/.ssh/authorized_keys.tmp. SSH setup is complete.   ------------------------------------------------------------------------ Verifying SSH setup =================== The script will now run the date command on the remote nodes using ssh to verify if ssh is setup correctly. IF THE SETUP IS CORRECTLY SETUP, THERE SHOULD BE NO OUTPUT OTHER THAN THE DATE AND SSH SHOULD NOT ASK FOR PASSWORDS. If you see any output other than date or are prompted for the password, ssh is not setup correctly and you will need to resolve the issue and set up ssh again. The possible causes for failure could be: 1. The server settings in /etc/ssh/sshd_config file do not allow ssh for user oracle. 2. The server may have disabled public key based authentication. 3. The client public key on the server may be outdated. 4. /home/oracle or /home/oracle/.ssh on the remote host may not be owned by oracle. 5. User may not have passed -shared option for shared remote users or may be passing the -shared option for non-shared remote users. 6. If there is output in addition to the date, but no password is asked, it may be a security alert shown as part of company policy. Append the additional text to the <OMS HOME>/sysman/prov/resources/ignoreMessages.txt file. ------------------------------------------------------------------------ --macleandb-007:-- Running /usr/bin/ssh -x -l oracle macleandb-007 date to verify SSH connectivity has been setup from local host to macleandb-007. IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Please note that being prompted for a passphrase may be OK but being prompted for a password is ERROR. The script will run SSH on the remote machine macleandb-007. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. Wed Dec  5 01:31:50 GMT+08:00 2012 ------------------------------------------------------------------------ --macleandb-008:-- Running /usr/bin/ssh -x -l oracle macleandb-008 date to verify SSH connectivity has been setup from local host to macleandb-008. IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Please note that being prompted for a passphrase may be OK but being prompted for a password is ERROR. The script will run SSH on the remote machine macleandb-008. The user may be prompted for a passphrase here in case the private key has been encrypted with a passphrase. Wed Dec  5 01:31:55 GMT+08:00 2012 ------------------------------------------------------------------------ ------------------------------------------------------------------------ Verifying SSH connectivity has been setup from macleandb-007 to macleandb-007 IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Wed Dec  5 01:31:51 GMT+08:00 2012 ------------------------------------------------------------------------ ------------------------------------------------------------------------ Verifying SSH connectivity has been setup from macleandb-007 to macleandb-008 IF YOU SEE ANY OTHER OUTPUT BESIDES THE OUTPUT OF THE DATE COMMAND OR IF YOU ARE PROMPTED FOR A PASSWORD HERE, IT MEANS SSH SETUP HAS NOT BEEN SUCCESSFUL. Wed Dec  5 01:31:57 GMT+08:00 2012 ------------------------------------------------------------------------ -Verification from complete- SSH verification complete.
   

1.3       OS参数优化:

  Oracle推荐在RAC环境中设置tcp_ephemeral_low、tcp_ephemeral_high、udp_ephemeral_low、udp_ephemeral_high等网络参数,以便优化网络传输性能,加强心跳网络可用性:  
macleandb-007 # chdev -l sys0 -a maxuproc=16384sys0 changed  macleandb-007 # lsattr -E -l sys0 -a maxuproc maxuproc 16384 Maximum number of PROCESSES allowed per user True   macleandb-007 # lsattr -El sys0 | grep maxuproc | awk '{print $2}' 16384   macleandb-007 # lsattr -El sys0 | grep ncargs | awk '{print $2}' 256         macleandb-008 #  chdev -l sys0 -a maxuproc=16384 sys0 changed   macleandb-008 #  lsattr -E -l sys0 -a maxuproc maxuproc 16384 Maximum number of PROCESSES allowed per user True   macleandb-008 #  lsattr -El sys0 | grep maxuproc | awk '{print $2}' 16384     macleandb-008 #  lsattr -El sys0 | grep ncargs | awk '{print $2}' 256     macleandb-007 # /usr/sbin/no -p -o tcp_ephemeral_low=9000 -o tcp_ephemeral_high=65500 Setting tcp_ephemeral_low to 9000 Setting tcp_ephemeral_low to 9000 in nextboot file Setting tcp_ephemeral_high to 65500 Setting tcp_ephemeral_high to 65500 in nextboot file macleandb-007 # /usr/sbin/no -p -o udp_ephemeral_low=9000 -o udp_ephemeral_high=65500 Setting udp_ephemeral_low to 9000 Setting udp_ephemeral_low to 9000 in nextboot file Setting udp_ephemeral_high to 65500 Setting udp_ephemeral_high to 65500 in nextboot file     macleandb-008 # /usr/sbin/no -p -o tcp_ephemeral_low=9000 -o tcp_ephemeral_high=65500 Setting tcp_ephemeral_low to 9000 Setting tcp_ephemeral_low to 9000 in nextboot file Setting tcp_ephemeral_high to 65500 Setting tcp_ephemeral_high to 65500 in nextboot file macleandb-008 #  /usr/sbin/no -p -o udp_ephemeral_low=9000 -o udp_ephemeral_high=65500 Setting udp_ephemeral_low to 9000 Setting udp_ephemeral_low to 9000 in nextboot file Setting udp_ephemeral_high to 65500 Setting udp_ephemeral_high to 65500 in nextboot file     no -po tcp_sendspace=65536 no -po tcp_recvspace=65536 no -po sb_max=41943040 no -po udp_sendspace=2097152 no -po udp_recvspace=20971520 no -r -o ipqmaxlen=512   macleandb-007 # no -po rfc1323=1 Setting rfc1323 to 1 Setting rfc1323 to 1 in nextboot file Change to tunable rfc1323, will only be effective for future connections     macleandb-008 # no -a |grep "rfc1323" rfc1323 = 1     macleandb-008 # ioo -o aio_maxreqs aio_maxreqs = 65536    
         

1.4       存储环境:

由于使用Veritas Cluster Filesystem,故无需配置ASM。为GI的ocr和votedisk创建专用的共享文件系统上的文件目录:  
macleandb-007 # chown grid:oinstall /oraclemacleandb-008 # chown grid:oinstall /oraclemacleandb-007 # chown oracle:oinstall /oradata/*macleandb-007 # cd /oradata   macleandb-007 # su - grid   $ cd oradata01 $ mkdir ocr $ cd .. $ mkdir oradata02/ocr $ mkdir oradata03/ocr     $ mkdir oradata01/vote $ mkdir oradata02/vote $ mkdir oradata03/vote    
     

1.5       使用cluvfy、rda工具验证安装环境:

  Cluster Verification Utilit(CVU)是Oracle所推荐的一种集群检验工具。该检验工具帮助用户在Cluter部署的各个阶段验证集群的重要组件,这些阶段包括硬件搭建、Clusterware的安装、RDBMS的安装、存储等等。我们既可以在Cluster安装之前使用CVU来帮我们检验所配置的环境正确可用,也可以在软件安装完成后使用CVU来做对集群的验收。   CVU提供了一种可扩展的框架,其所实施的常规检验活动是独立于具体的平台,并且向存储和网络的检验提供了厂商接口(Vendor Interface)。 CVU工具不依赖于其他Oracle软件,仅使用命令cluvfy,如cluvfy stage -pre crsinst -n vrh1,vrh2。   cluvfy的部署十分简单,在本地节点安装后,该工具在运行过程中会自动部署到远程主机上。具体的自动部署流程如下:  
  1. 用户在本地节点安装CVU
  2. 用户针对多个节点实施Verify检验命令
  3. CVU工具将拷贝自身必要的文件到远程节点
  4. CVU会在所有节点执行检验任务并生成报告
      CVU工具可以为我们提供以下功能:  
  1. 验证Cluster集群是否规范配置以便后续的RAC安装、配置和操作顺利
  2. 全类型的验证
  3. 非破坏性的验证
  4. 提供了易于使用的接口
  5. 支持各种平台和配置的RAC,明确完善的统一行为方式
  注意不要误解cluvfy的作用,它仅仅是一个检验者,而不负责实际的配置或修复工作: cluvfy不支持任何类型的cluster或RAC操作 在检验到问题或失败后,cluvfy不会采取任何修正行为 cluvfy不是性能调优或监控工具 cluvfy不会尝试帮助你验证RAC数据库的内部结构 RAC的实际部署可以被逻辑地区分为多个操作阶段,这些阶段被称作是”stage”,在实际的部署过程中每一个stage由一系列的操作组成。每一个stage的都有自身的预检查(pre-check)和验收检查(post-check),如图:      
$ cluvfy stage -post hwos -n macleandb-007,macleandb-008Performing post-checks for hardware and operating system setupChecking node reachability... Node reachability check passed from node "macleandb-007"     Checking user equivalence... User equivalence check passed for user "oracle"   Checking node connectivity...   Checking hosts config file...   Verification of the hosts config file successful   Node connectivity passed for subnet "172.168.1.0" with node(s) macleandb-008,macleandb-007 TCP connectivity check passed for subnet "172.168.1.0"   Node connectivity passed for subnet "172.168.2.0" with node(s) macleandb-008,macleandb-007 TCP connectivity check passed for subnet "172.168.2.0"   Node connectivity passed for subnet "192.168.18.128" with node(s) macleandb-008,macleandb-007 TCP connectivity check passed for subnet "192.168.18.128"     Interfaces found on subnet "172.168.1.0" that are likely candidates for VIP are: macleandb-008 en0:172.168.1.102 en0:172.168.1.102 macleandb-007 en0:172.168.1.101 en0:172.168.1.101   Interfaces found on subnet "172.168.2.0" that are likely candidates for VIP are: macleandb-008 en1:172.168.2.102 en1:172.168.2.102 macleandb-007 en1:172.168.2.101 en1:172.168.2.101   Interfaces found on subnet "192.168.18.128" that are likely candidates for VIP are: macleandb-008 en5:192.168.18.231 en5:192.168.18.231 macleandb-007 en5:192.168.18.227 en5:192.168.18.227 en5:192.168.18.227   WARNING: Could not find a suitable set of interfaces for the private interconnect Checking subnet mask consistency... Subnet mask consistency check passed for subnet "172.168.1.0". Subnet mask consistency check passed for subnet "172.168.2.0". Subnet mask consistency check passed for subnet "192.168.18.128". Subnet mask consistency check passed.   Node connectivity check passed   Checking multicast communication...   Checking subnet "172.168.1.0" for multicast communication with multicast group "230.0.1.0"... Check of subnet "172.168.1.0" for multicast communication with multicast group "230.0.1.0" passed.   Checking subnet "172.168.2.0" for multicast communication with multicast group "230.0.1.0"... Check of subnet "172.168.2.0" for multicast communication with multicast group "230.0.1.0" passed.   Checking subnet "192.168.18.128" for multicast communication with multicast group "230.0.1.0"... Check of subnet "192.168.18.128" for multicast communication with multicast group "230.0.1.0" passed.   Check of multicast communication passed. Check for multiple users with UID value 0 passed Time zone consistency check passed   Checking shared storage accessibility...   Disk                                  Sharing Nodes (2 in count) ------------------------------------  ------------------------ /dev/rhdisk2                          macleandb-008 macleandb-007 /dev/rhdisk3                          macleandb-008 macleandb-007 /dev/rhdisk4                          macleandb-008 macleandb-007 /dev/rhdisk5                          macleandb-008 macleandb-007 /dev/rhdisk6                          macleandb-008 macleandb-007       $ cluvfy stage -pre crsinst -n macleandb-007,macleandb-008   Performing pre-checks for cluster services setup   Checking node reachability... Node reachability check passed from node "macleandb-007"     Checking user equivalence... User equivalence check passed for user "oracle"   Checking node connectivity...   Checking hosts config file...   Verification of the hosts config file successful   Node connectivity passed for subnet "172.168.1.0" with node(s) macleandb-008,macleandb-007 TCP connectivity check passed for subnet "172.168.1.0"   Node connectivity passed for subnet "172.168.2.0" with node(s) macleandb-008,macleandb-007 TCP connectivity check passed for subnet "172.168.2.0"   Node connectivity passed for subnet "192.168.18.128" with node(s) macleandb-008,macleandb-007 TCP connectivity check passed for subnet "192.168.18.128"     Interfaces found on subnet "172.168.1.0" that are likely candidates for VIP are: macleandb-008 en0:172.168.1.102 en0:172.168.1.102 macleandb-007 en0:172.168.1.101 en0:172.168.1.101   Interfaces found on subnet "172.168.2.0" that are likely candidates for VIP are: macleandb-008 en1:172.168.2.102 en1:172.168.2.102 macleandb-007 en1:172.168.2.101 en1:172.168.2.101   Interfaces found on subnet "192.168.18.128" that are likely candidates for VIP are: macleandb-008 en5:192.168.18.231 en5:192.168.18.231 macleandb-007 en5:192.168.18.227 en5:192.168.18.227 en5:192.168.18.227   WARNING: Could not find a suitable set of interfaces for the private interconnect Checking subnet mask consistency... Subnet mask consistency check passed for subnet "172.168.1.0". Subnet mask consistency check passed for subnet "172.168.2.0". Subnet mask consistency check passed for subnet "192.168.18.128". Subnet mask consistency check passed.   Node connectivity check passed   Checking multicast communication...   Checking subnet "172.168.1.0" for multicast communication with multicast group "230.0.1.0"... Check of subnet "172.168.1.0" for multicast communication with multicast group "230.0.1.0" passed.   Checking subnet "172.168.2.0" for multicast communication with multicast group "230.0.1.0"... Check of subnet "172.168.2.0" for multicast communication with multicast group "230.0.1.0" passed.   Checking subnet "192.168.18.128" for multicast communication with multicast group "230.0.1.0"... Check of subnet "192.168.18.128" for multicast communication with multicast group "230.0.1.0" passed.   Check of multicast communication passed. Total memory check passed Available memory check passed Swap space check passed Free disk space check passed for "macleandb-008:/oracle/app/product/grid" Free disk space check passed for "macleandb-007:/oracle/app/product/grid" Free disk space check failed for "macleandb-008:/tmp/" Check failed on nodes: macleandb-008 Free disk space check passed for "macleandb-007:/tmp/" Check for multiple users with UID value 1101 passed User existence check passed for "oracle" Group existence check passed for "oinstall" Group existence check passed for "dba" Membership check for user "oracle" in group "oinstall" [as Primary] passed Membership check for user "oracle" in group "dba" passed Run level check passed Hard limits check passed for "maximum open file descriptors" Soft limits check passed for "maximum open file descriptors" Hard limits check passed for "maximum user processes" Soft limits check passed for "maximum user processes" System architecture check passed Kernel version check passed Kernel parameter check passed for "ncargs" Kernel parameter check passed for "maxuproc" Kernel parameter check passed for "tcp_ephemeral_low" Kernel parameter check passed for "tcp_ephemeral_high" Kernel parameter check passed for "udp_ephemeral_low" Kernel parameter check passed for "udp_ephemeral_high" Package existence check passed for "bos.adt.base" Package existence check passed for "bos.adt.lib" Package existence check passed for "bos.adt.libm" Package existence check passed for "bos.perf.libperfstat" Package existence check passed for "bos.perf.perfstat" Package existence check passed for "bos.perf.proctools" Package existence check passed for "xlC.aix61.rte" Package existence check passed for "xlC.rte" Operating system patch check failed for "Patch IZ97457" Check failed on nodes: macleandb-008,macleandb-007 Operating system patch check failed for "Patch IZ89165" Check failed on nodes: macleandb-008,macleandb-007 Check for multiple users with UID value 0 passed Current group ID check passed   Starting check for consistency of primary group of root user   Check for consistency of root user's primary group passed   Starting Clock synchronization checks using Network Time Protocol(NTP)...   NTP Configuration file check started... NTP Configuration file check passed No NTP Daemons or Services were found to be running PRVF-5507 : NTP daemon or service is not running on any node but NTP configuration file exists on the following node(s): macleandb-008,macleandb-007 Clock synchronization check using Network Time Protocol(NTP) failed   Core file name pattern consistency check passed.   User "oracle" is not part of "system" group. Check passed Default user file creation mask check passed Checking consistency of file "/etc/resolv.conf" across nodes   File "/etc/resolv.conf" does not exist on any node of the cluster. Skipping further checks   File "/etc/resolv.conf" is consistent across nodes   Time zone consistency check passed User ID < 65535 check passed   Kernel 64-bit mode check passed     Pre-check for cluster services setup was unsuccessful on all the nodes.         Test "Oracle Database 11g R2 (11.2.0) Preinstall (AIX)" executed at 05-Dec-2012 01:40:28   Test Results ~~~~~~~~~~~~       ID     NAME                 RESULT  VALUE ====== ==================== ======= ========================================== A00010 OS Certified?        PASSED  Certified A00015 HARDWARE_BITMODE 64? PASSED  is 64-bit A00016 System mode 64-bit?  FAILED  bootinfo error A00020 User in /etc/passwd? PASSED  userOK A00040 Group in /etc/group? PASSED  GroupOK A00050 Enter ORACLE_HOME    RECORD A00060 ORACLE_HOME Valid?   FAILED  OHnotvalid A00070 O_H Permissions OK?  FAILED  ORACLE_HOME must exist for this rule A00080 oraInventory Permiss PASSED  oraInventoryNotFound A00090 Got Software Tools?  PASSED  ld_nm_ar_make_found A00100 Umask Set to 022?    PASSED  UmaskOK A00110 ulimits OK?          FAILED  StackTooSmall A00140 LDLIBRARYPATH Unset? PASSED  UnSet A00160 LIBPATH Unset?       PASSED  UnSet A00190 Enter JDK Home       RECORD A00200 JDK Version          FAILED  JDK home is missing A00210 Other O_Hs in PATH?  PASSED  NoneFound A00220 Other OUI Up?        PASSED  NoOtherOUI A00230 /tmp Adequate?       PASSED  TempSpaceOK A00240 Disk Space OK?       SKIPPED This rule needs an accessible ORACLE_..> A00250 Swap (in MB)         RECORD  512 A00260 RAM (in MB)          PASSED  509440 A00270 SwapToRAM OK?        FAILED  SwapLessThanRAM A00290 IP Address           RECORD  192.168.18.227 A00300 Domain Name          RECORD  NotFound A00310 DNS Lookup           FAILED  Host not correctly registered in DNS A00320 /etc/hosts Format    FAILED  no entry found A00330 Kernel Parameters OK FAILED  NoAccess A00335 aio_maxreqs OK?      FAILED  ioo error A00340 AIXTHREAD_SCOPE=S?   PASSED  AIXTHREAD_SCOPEOK A00350 LINK_CNTRL is Unset? PASSED  LINK_CNTRLunset A00410 Got OS Patches?      PASSED  PatchesNotRequired A00430 Got OS Packages?     FAILED  [gpfs.base] not installed A00445 TCP/UDP Ephemeral OK PASSED  Ephemeral OK
  以上检测出现fail的环节可以忽略,安装环境已成熟。    

11gR2 GI/RAC正式安装

  1. 解压安装介质并运行rootpre.sh脚本:  
拷贝一个UNZIP过来macleandb-007 # /tmp/unzip   p10404530_112030_AIX64-5L_1of7.zipmacleandb-007 # /tmp/unzip p10404530_112030_AIX64-5L_2of7.zip macleandb-007 # /tmp/unzip p10404530_112030_AIX64-5L_3of7.zip         macleandb-007 # ./rootpre.sh ./rootpre.sh output will be logged in /tmp/rootpre.out_12-12-05.01:14:00   Checking if group services should be configured.... Nothing to configure.  
    2. 执行./runInstaller 启动GI安装   step1 选择skil software updates     step 2选择 安装为cluster   step3 选择 Advanced Installation   Step4 加入简体中文语言     step5 填入合适的cluster name和scan name,使用默认端口1521   step 6 验证SSH等价性     step7 指定en0、en1为private network, en5为public network     step8 指定shared file system为存储类型   step9 指定ocr位置   step10 指定votedisk位置,后续步骤点击Next即可       在2个节点上执行必要的orainstRoot.sh和root.sh脚本:  
macleandb-007 #  /home/grid/app/oraInventory/orainstRoot.shChanging permissions of /home/grid/app/oraInventory.Adding read,write permissions for group.Removing read,write,execute permissions for world.   Changing groupname of /home/grid/app/oraInventory to oinstall. The execution of the script is complete. macleandb-007 # /oracle/app/product/grid/root.sh Performing root user operation for Oracle 11g   The following environment variables are set as: ORACLE_OWNER= grid ORACLE_HOME=  /oracle/app/product/grid   Enter the full pathname of the local bin directory: [/usr/local/bin]: Creating /usr/local/bin directory... Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ...     Creating /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root script. Now product-specific root actions will be performed. Using configuration parameter file: /oracle/app/product/grid/crs/install/crsconfig_params Creating trace directory User ignored Prerequisites during installation User grid has the required capabilities to run CSSD in realtime mode OLR initialization - successful root wallet root wallet cert root cert export peer wallet profile reader wallet pa wallet peer wallet keys pa wallet keys peer cert request pa cert request   peer cert pa cert peer root cert TP profile reader root cert TP pa root cert TP peer pa cert TP pa peer cert TP profile reader pa cert TP profile reader peer cert TP peer user cert pa user cert Adding Clusterware entries to inittab     CRS-2672: Attempting to start 'ora.mdnsd' on 'macleandb-007' CRS-2676: Start of 'ora.mdnsd' on 'macleandb-007' succeeded CRS-2672: Attempting to start 'ora.gpnpd' on 'macleandb-007' CRS-2676: Start of 'ora.gpnpd' on 'macleandb-007' succeeded CRS-2672: Attempting to start 'ora.cssdmonitor' on 'macleandb-007' CRS-2672: Attempting to start 'ora.gipcd' on 'macleandb-007' CRS-2676: Start of 'ora.cssdmonitor' on 'macleandb-007' succeeded CRS-2676: Start of 'ora.gipcd' on 'macleandb-007' succeeded CRS-2672: Attempting to start 'ora.cssd' on 'macleandb-007' CRS-2672: Attempting to start 'ora.diskmon' on 'macleandb-007' CRS-2676: Start of 'ora.diskmon' on 'macleandb-007' succeeded CRS-2676: Start of 'ora.cssd' on 'macleandb-007' succeeded clscfg: -install mode specified Successfully accumulated necessary OCR keys. Creating OCR keys for user 'root', privgrp 'system'.. Operation successful. Now formatting voting disk: /oradata/oradata01/vote/vote1. Now formatting voting disk: /oradata/oradata02/vote/vote2. Now formatting voting disk: /oradata/oradata03/vote/vote3. CRS-4603: Successful addition of voting disk /oradata/oradata01/vote/vote1. CRS-4603: Successful addition of voting disk /oradata/oradata02/vote/vote2. CRS-4603: Successful addition of voting disk /oradata/oradata03/vote/vote3. ##  STATE    File Universal Id                File Name Disk group --  -----    -----------------                --------- --------- 1. ONLINE   08a3980556c04f05bf2286c0ad1a0924 (/oradata/oradata01/vote/vote1) [] 2. ONLINE   21d4c2b231be4fdcbf4d44a3f19455f2 (/oradata/oradata02/vote/vote2) [] 3. ONLINE   03619a54a99f4f9fbfc6b22cef4c31da (/oradata/oradata03/vote/vote3) [] Located 3 voting disk(s).       macleandb-008 # /home/grid/app/oraInventory/orainstRoot.sh Changing permissions of /home/grid/app/oraInventory. Adding read,write permissions for group. Removing read,write,execute permissions for world.   Changing groupname of /home/grid/app/oraInventory to oinstall. The execution of the script is complete.           macleandb-008 # /oracle/app/product/grid/root.sh Performing root user operation for Oracle 11g   The following environment variables are set as: ORACLE_OWNER= grid ORACLE_HOME=  /oracle/app/product/grid   Enter the full pathname of the local bin directory: [/usr/local/bin]: Creating /usr/local/bin directory... Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ...     Creating /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root script. Now product-specific root actions will be performed. Using configuration parameter file: /oracle/app/product/grid/crs/install/crsconfig_params Creating trace directory User ignored Prerequisites during installation   User grid has the required capabilities to run CSSD in realtime mode OLR initialization - successful Adding Clusterware entries to inittab CRS-4402: The CSS daemon was started in exclusive mode but found an active CSS daemon on node unknown, number unknown, and is terminating An active cluster was found during exclusive startup, restarting to join the cluster Configure Oracle Grid Infrastructure for a Cluster ... succeeded macleandb-008 #    
  执行完成上述脚本后在OUI图形界面上点击Finish完成安装,并验证安装结果:  
$ crsctl query crs softwareversion Oracle Clusterware version on node [macleandb-007] is [11.2.0.3.0]     $ crsctl query crs activeversion Oracle Clusterware active version on the cluster is [11.2.0.3.0]     $ crsctl stat res -t -------------------------------------------------------------------------------- NAME           TARGET  STATE        SERVER                   STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.LISTENER.lsnr ONLINE  ONLINE       macleandb-007 ONLINE  ONLINE       macleandb-008 ora.asm OFFLINE OFFLINE      macleandb-007               Instance Shutdown OFFLINE OFFLINE      macleandb-008 ora.gsd OFFLINE OFFLINE      macleandb-007 OFFLINE OFFLINE      macleandb-008 ora.net1.network ONLINE  ONLINE       macleandb-007 ONLINE  ONLINE       macleandb-008 ora.ons ONLINE  ONLINE       macleandb-007 ONLINE  ONLINE       macleandb-008 ora.registry.acfs OFFLINE OFFLINE      macleandb-007 OFFLINE OFFLINE      macleandb-008 -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.LISTENER_SCAN1.lsnr 1        ONLINE  ONLINE       macleandb-007 ora.macleandb-007.vip 1        ONLINE  ONLINE       macleandb-007 ora.macleandb-008.vip 1        ONLINE  ONLINE       macleandb-008 ora.cvu 1        ONLINE  ONLINE       macleandb-007 ora.oc4j 1        ONLINE  ONLINE       macleandb-007 ora.scan1.vip 1        ONLINE  ONLINE       macleandb-007         $ crsctl stat res -t -init -------------------------------------------------------------------------------- NAME           TARGET  STATE        SERVER                   STATE_DETAILS -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.asm 1        OFFLINE OFFLINE                               Instance Shutdown ora.cluster_interconnect.haip 1        ONLINE  ONLINE       macleandb-007 ora.crf 1        ONLINE  ONLINE       macleandb-007 ora.crsd 1        ONLINE  ONLINE       macleandb-007 ora.cssd 1        ONLINE  ONLINE       macleandb-007 ora.cssdmonitor 1        ONLINE  ONLINE       macleandb-007 ora.ctssd 1        ONLINE  ONLINE       macleandb-007               OBSERVER ora.diskmon 1        OFFLINE OFFLINE ora.drivers.acfs 1        ONLINE  ONLINE       macleandb-007 ora.evmd 1        ONLINE  ONLINE       macleandb-007 ora.gipcd 1        ONLINE  ONLINE       macleandb-007 ora.gpnpd 1        ONLINE  ONLINE       macleandb-007 ora.mdnsd 1        ONLINE  ONLINE       macleandb-007
    通过上述命令验证确认Grid Infrastructure Cluster版本、状态良好。   3. 进一步安装RDBMS DB Software,运行./runInstaller启动OUI界面     step1 点击NEXT   Step2 选择skip software updates Step3 选择Install database software only   Step4 选择RAC安装macleandb-007、macleandb-008 2个节点   Step5 选择添加简体中文语音包 Step6 选择安装企业版   Step7 选择安装RDBMS的ORACLE_HOME Step8 选择dba 为OSDBA组 Step9 复查安装先决条件,以上Warning可以忽略,点击Ignore ALL并NEXT Step10 Summary页面点击Install   Step 11 安装过程完成后,用root用户在2个节点分别运行$ORACLE_HOME/root.sh,脚本执行完成后RDBMS DB软件安装完毕。       4. 使用DBCA创建测试用数据库   切换至oracle用户并执行dbca工具:
Step0 点选RAC database
Step1 点选Create Database
Step2 点选General Purpose
Step3 填入DB NAME并加入macleandb-007、macleandb-008 2个节点。
Step 4 不配置Enterprise Manager,并启用Automatic maintenance Tasks
Step5 输入sysdba密码
Step6 选择使用OMF,并使用共享文件系统目录存放数据文件
Step7 指定Fast Recovery Area快速恢复区域目录,及大小
Step8 勾选Sample Schemas,装载示例模式用以测试性能和可用性
Step9 选择合适的SGA、PGA内存配置、processes参数和数据库字符集。
Step10 指定redolog文件的大小,过小与的redolog不利于性能,这里创建512MB一个的online redolog。
Step11 勾选Create Database点击FINISH正式创建数据库
DBCA完成create database工作后,检查创建的测试数据库状态:  
macleandb-007 # su - grid $ crsctl stat res -t -------------------------------------------------------------------------------- NAME           TARGET  STATE        SERVER                   STATE_DETAILS -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.MAC_LSN.lsnr ONLINE  ONLINE       macleandb-007 ONLINE  ONLINE       macleandb-008 ora.LISTENER.lsnr ONLINE  ONLINE       macleandb-007 ONLINE  ONLINE       macleandb-008 ora.asm OFFLINE OFFLINE      macleandb-007               Instance Shutdown OFFLINE OFFLINE      macleandb-008 ora.gsd OFFLINE OFFLINE      macleandb-007 OFFLINE OFFLINE      macleandb-008 ora.net1.network ONLINE  ONLINE       macleandb-007 ONLINE  ONLINE       macleandb-008 ora.ons ONLINE  ONLINE       macleandb-007 ONLINE  ONLINE       macleandb-008 ora.registry.acfs OFFLINE OFFLINE      macleandb-007 OFFLINE OFFLINE      macleandb-008 -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.LISTENER_SCAN1.lsnr 1        ONLINE  ONLINE       macleandb-007 ora.macleandb-007.vip 1        ONLINE  ONLINE       macleandb-007 ora.macleandb-008.vip 1        ONLINE  ONLINE       macleandb-008 ora.cvu 1        ONLINE  ONLINE       macleandb-007 ora.oc4j 1        ONLINE  ONLINE       macleandb-007 ora.scan1.vip 1        ONLINE  ONLINE       macleandb-007 ora.testdb.db 1        ONLINE  ONLINE       macleandb-007               Open 2        ONLINE  ONLINE       macleandb-008               Open     macleandb-007 # su  -  oracle     $ srvctl stop database -d testdb $ srvctl start database -d testdb  
  上述命令结果显示测试用TESTDB状态良好、可用。

posted on 2013-03-19 00:48  Oracle和MySQL  阅读(592)  评论(0编辑  收藏  举报

导航