Вы находитесь на странице: 1из 44

Configure Network for oracle RAC installation -: Determine public node names, private node names, and virtual

node names for each node in the cluster. or the public node name, use the primar! host name of each node. "ublic node -- racnode-# $ racnode-% "rivate node -- racnode-#-priv $ racnnode-%-priv &irtual node -- racnode-#-vip $ racnode-%-vip 'R ()A*"+( RAC -N'D(-# "ublic ,"- #-%.#./.#.-# "rivate ," 1 #-%.#./.#23.43 &irtual ," -- #-%.#./.#.-2 RAC - N'D(-% "ublic ," 0 #-%.#./.#.-% "rivate ," 0 #-%.#./.#23.%3 &irtual ," - #-%.#./.#.-.

,n all nodes modif! 5etc5hosts file so that the! contain the host ," addresses, virtual ," addresses, and private network ," addresses from both nodes in the cluster, as follows, vi 5etc5hosts #%6.3.3.# localhost.localdomain localhost #-%.#./.#.-# racnode-# #-%.#./.#.-2 racnode-#-vip #-%.#./.#23.43 racnode-#-priv #-%.#./.#.-% racnode-% #-%.#./.#.-. racnode-%-vip #-%.#./.#23.%3 racnode-%-priv &erif! the network configuration b! using the ping command to test the connection. ping -c 4 racnode-% ping -c 4 racnode-%-vip ping -c 4 racnode-%-priv ping -c 4 racnode-# ping -c 4 racnode-#-vip ping -c 4 racnode-#-priv +ist of "arameters that must have identical in RAC database -: ,n a RAC database there ma! contain several instances and the initiali7ation parameters of all of the instances should not have identical setting. ,n fact the initiali7ation parameters that are critical for database creation and affect certain database operations must have the same value for ever! instance in an 'racle RAC database. 8elow is the list of initiali7ation parameters that must have identical settings for all instances in a RAC database. # 0 AC9,&(:,N;9ANC(:C'<N9 % 0 ARC=,&(:+A>:9AR>(9 4 0 C+<;9(R:DA9A8A;( ? 0 C+<;9(R:DA9A8A;(:,N;9ANC(; 2 0 C'*"A9,8+( . 0 C'N9R'+: ,+(;

6 - D8:8+'C@:;,A( / 0 D8:D'*A,N - 0 D8:NA*( #3 0 D8: ,+(; ## 0 D8:R(C'&(RB: ,+(:D(;9 #% 0 D8:R(C'&(RB: ,+(:D(;9:;,A( #4 0 D8:<N,C<(:NA*( #? 0 D*+:+'C@; D 'nl! if set to 7ero E #2 0 ,N;9ANC(:9B"( D RD8*; 'R A;*E #. 0 "ARA++(+:*A):;(R&(R #6 -<ND':*ANA>(*(N9 &arious 9ools for ,nstalling, Configuring 'racle RAC -: # -: 'racle <niversal ,nstaller D'<,E- After configuring the pre-installation tasks of the nodes '<, installs the 'racle Clusterware and the 'racle Database software with 'racle RAC. ,t also can install oracle software on the other nodes using a network connection. % -: Cluster &erification <tilit! DC&<E- 9he C&< is a command-line tool. ,t is ver! useful to check the nodes for preinstallation as well as postinstallation reFuirements of the cluster environment. ,n fact '<, runs the C&< after the 'racle Clusterware installation to verif! the environment. 4 -: 'racle (nterprise *anager- Gith (* it is eas! to configure RAC environments. ,t has both the Database Control and >rid Control graphical user interfaces D><,sE. ? -: ;erver Control D;R&C9+E- ;R&C9+ is a command-line interface that !ou can use to manage an 'racle RAC database from a single point. <sing ;R&C9+ !ou can start or stop or manage an! instance on the cluster. 2 -: Cluster Read! ;ervices Control DCR;C9+E- CR;C9+ is a command-line tool that !ou can use to manage 'racle Clusterware. Bou can use CR;C9+ to start and stop 'racle Clusterware and to determine the current status of !our 'racle Clusterware installation. . -: 'racle ,nterface Configuration 9ool D', C >E- ', C > is a command-line tool which !ou can use to allocate and de-allocate network interfaces to components. Bou can use ', C > to direct components to use specific network interfaces and to retrieve component configuration information. 6 -: 'CR Configuration 9ool D'CRC'N ,>E- 'CRC'N ,> is a command-line tool for 'CR administration. Bou can also use the 'CRC=(C@ and 'CRD<*" utilities to troubleshoot configuration problems that affect the 'CR. 'verview of 'racle Clusterware and 'racle RAC -: ,n a database whenever !ou Fuer! from &Hdatabase to know the name of the database and want to know the name of the instance from vHthread the! return similar result. ;uppose, ;C+I select name from vHdatabaseJ ;C+I select instance from vHthreadJ which indicates in the database there is onl! one instance that is database have a one-to-one relationship between datafiles and the instance. 'racle RAC environments, however, have a one-toman! relationship between datafiles and instances. ,n RAC environments multiple instances form a single database. 9he instances can reside on different servers which is referred as nodes in RAC environment. ,n RAC environment the set of interconnected instances that allows the servers to work together is called cluster. 9he ph!sical structures that make up the database must reside on shared storage that is accessible from all servers that are part of the cluster. (ach server in the cluster runs the 'racle RAC software.

,n RAC database each instance has its own memor! and background processes but ever! instances share the same data files. ;o while an! data need to write or retrieve the! use the same datafiles but each instance use itKs own memor!. ,n RAC 'racle uses Cache usion 9echnolog! to s!nchroni7e the data stored in the buffer cache of each cluster database instance. Cache usion moves current data blocks Dwhich reside in memor!E between database instances, rather than having one database instance write the data blocks to disk and reFuiring another database instance to reread the data blocks from disk. Now Fuestion is if one instance read data and modif! it in the buffer cache and if another instance need that data then how oracle manages itL Ghen a data block is needed for one instance which resides in the buffer cache of another instance, Cache usion transfers the data block directl! between the instances using the interconnect, enabling the 'racle RAC database to access and modif! data as if the data resided in a single buffer cache. 'racle RAC provides high availabilit! and scalabilit!. ,f one instance fails in RAC environment still another instance can do the task and thus prevents the server from being a single point of failure. ,n a RAC environment transactions are distributed over multiple instances. 9hus minimi7e load from one instance. Never miM with oracle clusterware with 'racle RAC. 9he 'racle Clusterware is software that when installed on servers, enables the servers to be bound together to operate as if the! were one server. 8efore !ou install oracle RAC !ou need to install clusterware. Githout clusterware !ou canKt install oracle RAC. An 'racle RAC database is logicall! or ph!sicall! shared ever!thing database. All datafiles, control files, " ,+(s, and redo log files in 'racle RAC environments must reside on shared disks. 9his is so that all of the cluster database instances can access them. ,N that shared disk !ou can use the following file storage options for 'racle RAC database. 1)ASM: Ghich stands for Automatic ;torage *anagement. And oracle recommends A;*. 2)Oracle Cluster File System (OCFS): 'C ; is available for +inuM and Gindows platforms, or a third-part! cluster file s!stem that is certified for 'racle RAC. 3)A network file system: 9his is not supported on A,), "'G(R, or on ,8* 7;eries-based +inuM. 4)Raw e!ices ,n this post , will show how to configure RAG device to install oracle RAC. 8efore discussing it is good to know the difference between single instance database and RAC instance database. 'racle RAC databases differ architecturall! from 'racle RAC single-instance 'racle databases in that each 'racle RAC database instance also has, At least one additional thread of redo for each instance An instance-specific undo tablespace

9o configure RAG storage device as a shared storage in RAC database first !ou have to think about clusterware part. 'racle clusterware has two components 'CR and voting disk. 8efore !ou install 'racle Clusterware, !ou will need to configure 2 raw partitions, each %2. *8 in si7e, one storing the 'racle Cluster Registr! D'CRE, another one for duplicate 'CR file on a different disk, referred to as the 'CR mirror, and three voting disks. And then ,f !ou plan to use raw devices for storing the database files, !ou will need to create additional raw partitions for each tablespace, online redo log file, control file, ;" ,+( and password file. 8elow is the procedure of how to configure RAG device. Ste" 1: 8e sure that !ou have storage boM purchased that is shared on both nodes. Now to see available shared disk on !our s!stem as a root user on racnode-# use, # $s%in$f isk &l ,t gave me output like, Disk 5dev5sdb: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Disk 5dev5sdb doesnKt contain a valid partition table Disk 5dev5sdc: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Disk 5dev5sdc doesnKt contain a valid partition table Disk 5dev5sdd: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Disk 5dev5sdd doesnKt contain a valid partition table Disk 5dev5sde: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Disk 5dev5sde doesnKt contain a valid partition table Disk 5dev5sdf: -#.% >8, -#%./3223?3 b!tes %22 heads, .4 sectors5track, ##3-. c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Disk 5dev5sdf doesnKt contain a valid partition table ;ince , have sdb, sdc, sdd, sdf, sde disks on m! storage boM so all five are shown.

Ste" 2: Now as a root user on racnode-# create two raw partitions %2. *8 in si7e for the 'CR and its mirror, and three partitions %2. *8 in si7e for the 'racle Clusterware voting disks. 9o store first 'CR partition , use sdb for this. ;o, , use O 5sbin5fdisk 5dev5sdb After issuing it, <se the p command to list the partition table of the device. <se the n command to create a partition. After !ou have created the reFuired partitions on this device, use the w command to write the modified partition table to the device. =ere is the eMample of creating m! first %2. raw partition of sdb disk. 9he bolded one is input b! me. 'root(racno e&1 )*# $s%in$f isk $ e!$s % Device contains neither a valid D'; partition table, nor ;un, ;>, or '; disklabel 8uilding a new D'; disklabel. Changes will remain in memor! onl!, until !ou decide to write them. After that, of course, the previous content wonKt be recoverable. 9he number of c!linders for this disk is set to #-2/#. 9here is nothing wrong with that, but this is larger than #3%?, and could in certain setups cause problems with: # -: software that runs at boot time De.g., old versions of +,+'E % -: booting and partitioning software from other 'ss De.g., D'; D,;@, ';5% D,;@E Garning: invalid flag 3M3333 of partition table ? will be corrected b! wDriteE Command Dm for helpE: " Disk 5dev5sdb: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Device 8oot ;tart (nd 8locks ,d ;!stem Command Dm for helpE: n Command action e eMtended p primar! partition D#-?E " "artition number D#-?E: 1 irst c!linder D#-#-2/#, default #E: <sing default value # +ast c!linder or Psi7e or Psi7e* or Psi7e@ D#-#-2/#, default #-2/#E: +2,-M Command Dm for helpE: w 9he partition table has been alteredQ Calling ioctlDE to re-read partition table. ;!ncing disks. RrootSracnode-# TUO ;imilarl! configure other %2.*8 partition from rest of the disk. , created raw %2.*8 partition from 5dev5sdc for 'CR mirror. rom the three disks 5dev5sdd, 5dev5sde and 5dev5sdf create each %2.*8

partition for voting disk. 9hat is, #f #f #f #f isk $ isk $ isk $ isk $ e!$s c e!$s e!$s e e!$s f

After !ou configure !our all 2 disks on !our s!stem !our fdisk -l output will look like below. 'root(racno e&1 )*# f isk &l Disk 5dev5sda: /3.3 >8, /33%.4.#/2. b!tes %22 heads, .4 sectors5track, -6%- c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Device 8oot ;tart (nd 8locks ,d ;!stem 5dev5sda# N # #%62 #3%?#?3. /4 +inuM 5dev5sda% #%6. 46%4 #-..42.3 /4 +inuM 5dev5sda4 46%? .#?2 #-?2?6#2 /4 +inuM 5dev5sda? .#?. -6%- %/6//?/3 2 (Mtended 5dev5sda2 .#?. /??3 #/?4?22. /4 +inuM 5dev5sda. /??# -%32 .#??/4# /4 +inuM 5dev5sda6 -%3. -6%6 ?#-%-44P /% +inuM swap 5 ;olaris Disk 5dev5sdb: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Device 8oot ;tart (nd 8locks ,d ;!stem 5dev5sdb# # 4% %2633/P /4 +inuM Disk 5dev5sdc: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Device 8oot ;tart (nd 8locks ,d ;!stem 5dev5sdc# # 4% %2633/P /4 +inuM Disk 5dev5sdd: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Device 8oot ;tart (nd 8locks ,d ;!stem 5dev5sdd# # 4% %2633/P /4 +inuM Disk 5dev5sde: #.#.3 >8, #.#3.#%64.33 b!tes %22 heads, .4 sectors5track, #-2/# c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes

Device 8oot ;tart (nd 8locks ,d ;!stem 5dev5sde# # 4% %2633/P /4 +inuM Disk 5dev5sdf: -#.% >8, -#%./3223?3 b!tes %22 heads, .4 sectors5track, ##3-. c!linders <nits 1 c!linders of #.3.2 N 2#% 1 /%%2%/3 b!tes Device 8oot ;tart (nd 8locks ,d ;!stem 5dev5sdf# # 4% %2633/P /4 +inuM Ste" 3: As the root user on racnode-#, edit the 5etc5s!sconfig5rawdevices file and add the mappings for the raw devices used b! 'racle Clusterware. ' root(racno e&1 )*# !i $etc$sysconfi.$raw e!ices #OCR /e!ices $ e!$s % $ e!$s %1 $ e!$s c $ e!$s c1 #0otin. /isk /e!ices $ e!$s $ e!$s 1 $ e!$s e $ e!$s e1 $ e!$s f $ e!$s f1 Ste" 4: Vust ignore this step if !ou use R=+2. 9o configure it on R=+2 it is discussed on http:55arWudba.blogspot.com5%33/53/5on-rhl2-rawdevices-unrecogni7ed-service.html ,f !ou are using R=+? then as the root user, on the node racnode#, enable the raw devices so that the mappings become effective at the operating s!stem level using, 'root(racno e&1 )*# ser!ice $etc$sysconfi.$raw e!ices start ,f !ou are using R=+2 then !ou will get 'root(racno e&1 )*# ser!ice raw e!ices start rawdevices: unrecogni7ed service 9o do it in R=+2 it is discussed in http:55arWudba.blogspot.com5%33/53/5on-rhl2-rawdevicesunrecogni7ed-service.html Ste" ,: ,n the racnode-% inform the '; of partition table changes. 9his is done b! partprobe program that informs the operating s!stem kernel of partition table changes, b! reFuesting that the operating s!stem re-read the partition table. #$s%in$"art"ro%e $ e!$s % $s%in$"art"ro%e $ e!$s c $s%in$"art"ro%e $ e!$s $s%in$"art"ro%e $ e!$s e $s%in$"art"ro%e $ e!$s f 9his forces the operating s!stem on the other node in the cluster to refresh its picture of the shared disk partitions. Ste" -: 'n R=+? for each node make an entr! in 5etc5s!sconfig5rawdevices and use following

command, ser!ice raw e!ices start ,n R=(+ do as it is in http:55arWudba.blogspot.com5%33/53/5on-rhl2-rawdevices-unrecogni7edservice.html Ste" 1: As the root user, on each node in the cluster, enter commands similar to the following to set the owner, group, and permissions on the newl! created device files: c2own root:oinstall $ e!$raw$raw1 c2own root:oinstall $ e!$raw$raw2 c2own oracle:oinstall $ e!$raw$raw3 c2own oracle:oinstall $ e!$raw$raw4 c2own oracle:oinstall $ e!$raw$raw, c2mo -43 $ e!$raw$raw1 c2mo -43 $ e!$raw$raw2 c2mo -43 $ e!$raw$raw3 c2mo -43 $ e!$raw$raw4 c2mo -43 $ e!$raw$raw, 'racle RAC ;oftware Components -: An 'racle RAC database has the same processes and memor! structures as a single-instance 'racle database as well as additional process and memor! structures that are specific to 'racle RAC. 9he list of 'racle RAC processes are: #E+*;X>lobal Cache ;ervice "rocess %E+*DX>lobal (nFueue ;ervice Daemon 4E+*'NX>lobal (nFueue ;ervice *onitor ?E+C@3X,nstance (nFueue "rocess After one instance caches data, an! other instance within the same cluster database can acFuire a block image from another instance in the same database faster than b! reading the block from disk. 9his is called cache fusion, an! instance need data that is cached b! other instance, is passed to it b! using private interconnect. 9he >lobal Cache ;erviceD>C;E and >lobal (nFueue ;erviceD>(;E maintain records of the statuses of each data file and each cached block using a >lobal Resource Director! D>RDE. 'racle RAC processes and the >RD collaborate to enable Cache usion. Confi.ure Raw /e!ices for ASM in RAC4 &: Configuring RAG decides in RAC is Wust similiar as !ou do configure raw devices for voting disk and 'CR. ,n this eMample, , have faced a different scenario where in ,n racnode-# disk sdb is mapped to sdf in ranode-% ,n racnode-# disk sdc is mapped to sdd in ranode-% ,n racnode-# disk sdd is mapped to sde in ranode-% irst , have created three raw partitions from m! raw devices sdb, sdc and sdd of racnode-# each of /3>8 for A;*. RrootSracnode-# TUO 5sbin5fdisk 5dev5sdb 9he number of c!linders for this disk is set to #-2/#.9here is nothing wrong with that, but this is larger

than #3%?, and could in certain setups cause problems with: #E software that runs at boot time De.g., old versions of +,+'E %E booting and partitioning software from other 'ss De.g., D'; D,;@, ';5% D,;@E Command Dm for helpE: n Command action e eMtended p primar! partition D#-?E p "artition number D#-?E: % irst c!linder D44-#-2/#, default 44E: P/3333* +ast c!linder or Psi7e or Psi7e* or Psi7e@ D-6%.-#-2/#, default #-2/#E: <sing default value #-2/# Command Dm for helpE: w 9he partition table has been alteredQ Calling ioctlDE to re-read partition table. GARN,N>: Re-reading the partition table failed with error #.: Device or resource bus!. 9he kernel still uses the old table. 9he new table will be used at the neMt reboot. ;!ncing disks. RrootSracnode-# TUO 5sbin5fdisk 5dev5sdc 9he number of c!linders for this disk is set to #-2/#. 9here is nothing wrong with that, but this is larger than #3%?, and could in certain setups cause problems with: #E software that runs at boot time De.g., old versions of +,+'E %E booting and partitioning software from other 'ss De.g., D'; D,;@, ';5% D,;@E Command Dm for helpE: n Command action e eMtended p primar! partition D#-?E p "artition number D#-?E: % irst c!linder D44-#-2/#, default 44E: <sing default value 44 +ast c!linder or Psi7e or Psi7e* or Psi7e@ D44-#-2/#, default #-2/#E: P/3333* Command Dm for helpE: w 9he partition table has been alteredQ Calling ioctlDE to re-read partition table. GARN,N>: Re-reading the partition table failed with error #.: Device or resource bus!.9he kernel still

uses the old table. 9he new table will be used at the neMt reboot. ;!ncing disks. RrootSracnode-# TUO 5sbin5fdisk 5dev5sdd 9he number of c!linders for this disk is set to #-2/#.9here is nothing wrong with that, but this is larger than #3%?, and could in certain setups cause problems with: #E software that runs at boot time De.g., old versions of +,+'E %E booting and partitioning software from other 'ss De.g., D'; D,;@, ';5% D,;@E Command Dm for helpE: n Command action e eMtended p primar! partition D#-?E p "artition number D#-?E: % irst c!linder D44-#-2/#, default 44E: <sing default value 44 +ast c!linder or Psi7e or Psi7e* or Psi7e@ D44-#-2/#, default #-2/#E: P/3333* Command Dm for helpE: w 9he partition table has been alteredQ Calling ioctlDE to re-read partition table. GARN,N>: Re-reading the partition table failed with error #.: Device or resource bus!. 9he kernel still uses the old table. 9he new table will be used at the neMt reboot. ;!ncing disks. or RACN'D(-# 'root(racno e&1 )*# !i $etc$u e!$rules4 $-3&oracle&raw4rules AC9,'N11YaddY, @(RN(+11Ysdb%Y, R<NP1Y5bin5raw 5dev5raw5raw. ZNY AC9,'N11YaddY, @(RN(+11Ysdc%Y, R<NP1Y5bin5raw 5dev5raw5raw6 ZNY AC9,'N11YaddY, @(RN(+11Ysdd%Y, R<NP1Y5bin5raw 5dev5raw5raw/ ZNY @(RN(+11YrawR.-/UNY, 'GN(R1YoracleY, >R'<"1YoinstallY, *'D(1Y.??Y 9hen reboot the node if it suggest as in this eMample. 9he new table will be used at the neMt reboot. 'root(racno e&1 )*# re%oot or immediate affect if !ou donKt see an! reboot message, O5bin5raw 5dev5raw5raw. 5dev5sdb% O5bin5raw 5dev5raw5raw6 5dev5sdc% O5bin5raw 5dev5raw5raw/ 5dev5sdd% A 5ust t2e "ermission settin.s %y6 O chown oracle:oinstall 5dev5raw5raw. O chown oracle:oinstall 5dev5raw5raw6 O chown oracle:oinstall 5dev5raw5raw/ O chmod .?3 5dev5raw5raw. O chmod .?3 5dev5raw5raw6 O chmod .?3 5dev5raw5raw/

or RACN'D(-% 'root(racno e&2 )*# !i $etc$u e!$rules4 $-3&oracle&raw4rules AC9,'N11YaddY, @(RN(+11Ysdf%Y, R<NP1Y5bin5raw 5dev5raw5raw. ZNY AC9,'N11YaddY, @(RN(+11Ysdd%Y, R<NP1Y5bin5raw 5dev5raw5raw6 ZNY AC9,'N11YaddY, @(RN(+11Ysde%Y, R<NP1Y5bin5raw 5dev5raw5raw/ ZNY @(RN(+11YrawR.-/UNY, 'GN(R1YoracleY, >R'<"1YoinstallY, *'D(1Y.??Y 9hen reboot the node if it suggest as in this eMample. 9he new table will be used at the neMt reboot. 'root(racno e&2 )*# re%oot or immediate affect, if !ou donKt see an! reboot message O5bin5raw 5dev5raw5raw. 5dev5sdf% O5bin5raw 5dev5raw5raw6 5dev5sdd% O5bin5raw 5dev5raw5raw/ 5dev5sde% and adWust the permission settings b!, Ochown oracle:oinstall 5dev5raw5raw. Ochown oracle:oinstall 5dev5raw5raw6 Ochown oracle:oinstall 5dev5raw5raw/ Ochmod .?3 5dev5raw5raw. Ochmod .?3 5dev5raw5raw6 Ochmod .?3 5dev5raw5raw/ ReFuirements to check before install 'racle RAC #EChecking the =ardware ReFuirements [ "h!sical memor!: At least #>8 RA*. [ ;wap space: ,f RA* is between # >8 and % >8 then make swap space to #.2 times of the si7e of RA*. ,f R*AN is more than %>8 then make swap space to the eFual of the si7e of the RA*. [ 9emporar! space: At least ?33 *8. 9!picall! in 5tmp director!. [ "rocessor t!pe DC"<E: Need to be certified with the version of the 'racle software being installed. [ =ard Disk ;pace: #.2 >8 for oracle database home director!P#.2>8 for the A;* home director!P#%3 oracle clusterware software installationP9wo 'racle Clusterware components 'CR %2. *8 each, or 2#% *8 total disk spaceP9hree 'racle Clusterware components &oting Disk %2. *8 each, or 6./ *8 total disk space. [ All the nodes in the cluster must have same hardware architecture. =owever can have machines of different speeds and si7e in the same cluster. 'n NniM s!stem !ou can check hardware components as follows. [ 9o determine ph!sical RA* si7e, O grep *em9otal 5proc5meminfo [ 9o determine the configured swap space, O grep ;wap9otal 5proc5meminfo [ 9o determine the amount of disk space available in the 5tmp director!, O df -k 5tmp [ 9o determine free disk space on the s!stem, Odf -h or Odf -k [ 9o determine whether the s!stem architecture, O grep Ymodel nameY 5proc5cpuinfo C2eckin. t2e 7etwork Re8uirements &: Network =ardware ReFuirements

[ 'ne private interconnect is needed for 'racle Custerware for the use to s!nchroni7e each instanceKs use of the shared resources and for 'racle RAC to interconnect to transmit data blocks that are shared between the instances. 9hus each node need at least two network interface cards, or network adapters. 'ne adapter is for the public network and the other adapter is for the private network [ 9he public interface names associated with the network adapters for each network must be the same on all nodes, and the private interface names associated with the network adaptors should be the same on all nodes. or eMample if in server#5node#, eth3 is the public interface then on server%5node% eth3 must be the public interface. [ or the public network, each network adapter must support 9C"5,". [ or the private network, the interconnect must support the user datagram protocol D<D"E using highspeed network adapters and switches that support 9C"5,". [ Note <D" is the default interconnect protocol for 'racle RAC, and 9C" is the interconnect protocol for 'racle Clusterware. [ or the private network, the endpoints of all designated interconnect interfaces must be completel! reachable on the network. All nodes must be accessible between through private network. Bou can check the reachabilit! b! ping command. 7etwork 9arameter Re8uirements &: ,f N ; is used for the shared storage, then !ou must set the values for the N ; buffer si7e parameters rsi7e and wsi7e to at least #.4/?. 'racle recommends that !ou use the value 4%6./. Bou can set the value b! updating the 5etc5fstab file on each node with an entr! similar to the following, clusternode:5vol5DA9A5oradata 5home5oradata5app nfs rw,bg,vers14,tcp,hard,nointr,timeo1.33,rsi7e14%6./,wsi7e14%6./,actimeo13 # % ," Address ReFuirements [ Bou must have at least three ," addresses available for each node #. An ," address for the public interface. ,nterface name should be the name of the node name. %. An ," address for the private interface. ,nterface name should be hostname-priv. 4. 'ne virtual ," address with an associated network name. ,nterface name should be hostname-vip. [ 9he &," is on the same subnet as !our public interface and it address will be not used currentl! in the network. [ or public and virtual addresses register with an associated network name in DN;. ,f !ou do not have an available DN;, then record the all network names and interface names in the s!stem hosts file, 5etc5hosts. [ ,dentif! the interface names and associated ," addresses for all network adapters b! running the following command on each node: O 5sbin5ifconfig Node 9ime ReFuirements (nsure that each member node of the cluster is set as closel! as possible to the same date and time. 'racle strongl! recommends using the Network 9ime "rotocol DN9"E feature of most operating s!stems for this purpose. &erif!ing the ,nstalled 'perating ;!stem and ;oftware ReFuirements [ 9o determine which distribution and version of +inuM is installed, run the following command as the root user: Ocat 5etc5issue [ 9he +inuM kernel is updated to fiM bugs. 9hese kernel updates are referred to as erratum kernels or errata levels. 9o determine if the reFuired errata level is installed, use the following procedure as the

root user: Confi.ure ser!er to install Oracle RAC &: Confi.urin. O"eratin. System :sers an ;rou"s in All 7o es &: 'n windows !ou donKt need to create separate user to install oracle or donKt need to create groups. '<, automaticall! do it. =owever on uniM !ou must create the following operating s!stem groups are reFuired if !ou are installing 'racle RAC for the first time. [ 9he ';D8A group Dt!picall!, dbaE -9his is the '; user who has ;B;D8A privilege. [ 9he 'racle ,nventor! group Dt!picall!, oinstallE -9his group owns all 'racle software installed on the s!stem. 9he following operating s!stem users are reFuired [ A user that owns the 'racle software Dt!picall!, oracleE. [ An unprivileged user Dfor eMample, the nobod! user on +inuM s!stemsE. Create the reFuired groups and users Do this steps on all nodes of !our cluster. As a root user, 5usr5sbin5groupadd oinstall 5usr5sbin5groupadd dba useradd -u %33 -g oinstall -> dba -d 5home5oracle -r oracle Change the password b!, passwd oracle &erif! the user b!, id oracle Note that in this eMample in stead of using node# use !our original node name and instead of using node% use !our original node name. Confi.urin. SS< on All Cluster 7o es Ghen installing 'racle RAC on <N,) and +inuM platforms, the software is installed on one node, and '<, uses secure communication to cop! the software binar! files to the other cluster nodes. '<, uses the ;ecure ;hell D;;=E for the communication. ;o !ou must have configured ;;= on all nodes. [ 9o configure ;;=, !ou must first create Rivest-;hamir-Adleman DR;AE ke!s and Digital ;ignature Algorithm DD;AE ke!s on each cluster node. After !ou have created the private and public ke!s, !ou cop! the ke!s from all cluster node members into an authori7ed ke!s file that is identical on each node. >enerating R;A and D;A @e!s # -: +og on as oracle user. % -: ;ee whether .ssh director! eMist or not. ,f does not eMist then create one. H mkdir T5.ssh H chmod 633 T5.ssh 4 -: Create the R;A-t!pe public and private encr!ption ke!s b!, 5usr5bin5ssh-ke!gen -t rsa 9his command creates the public ke! in the 5home5oracle5.ssh5id:rsa.pub file and the private ke! in the 5home5oracle5.ssh5id:rsa file. ? -: Create the D;A t!pe public and private ke!s. 5usr5bin5ssh-ke!gen -t dsa 9his command creates the public ke! in the 5home5oracle5.ssh5id:dsa.pub file and the private ke! in

the 5home5oracle5.ssh5id:dsa file. 2 -: Repeat step # through ? in all the nodes. Adding the @e!s to an Authori7ed @e! ile # -: >o to .ssh director! H cd T5.ssh % -: Add the R;A and D;A ke!s to the authori7ed:ke!s files. H cat id:rsa.pub IIauthori7ed:ke!s H cat id:dsa.pub IIauthori7ed:ke!s 4 -: <sing ;C" cop! the authori7ed:ke!s file to the oracle user .ssh director! on a remote node. scp authori7ed:ke!s node%:5home5oracle5.ssh5 ? -: <sing ;;=, log in to the node where !ou copied the authori7ed:ke!s file, using the passphrase !ou created. 9hen change to the .ssh director!, and using the cat command, add the R;A and D;A ke!s for the second node to authori7ed:ke!s file. ssh node% (nter passphrase for ke! K5home5oracle5.ssh5id:rsaK: cd T5.ssh cat id:rsa.pub II authori7ed:ke!s cat id:dsa.pub II authori7ed:ke!s 2 -: ,f !ou have more than % nodes in !our cluster, repeat step 4 and step ? for each node !ou intend to add to !our cluster. Cop! the most recentl! updated authori7ed:ke!s file to the neMt node, then add the public ke!s for that node to the authori7ed:ke!s file. . -: After updating the authori7ed:ke!s file on all nodes, use ;C" to cop! the complete authori7ed:ke!s file from the last node to be updated to all the other cluster nodes, overwriting the eMisting version on the other nodes. or eMample, scp authori7ed:ke!s node#:5home5oracle5.ssh5 Configure ;;= <ser (Fuivalenc! on Cluster *ember Nodes # -: +og on as a oracle user. % -: ;tart the ;;= agent and load the ;;= ke!s into memor!. H eMec 5usr5bin5ssh-agent H;=(++ H 5usr5bin5ssh-add 4 -: Complete the ;;= configuration b! using the ssh command to retrieve the date on each node in the cluster. H ssh node# date H ssh node% date Oracle 11. Release 1 RAC On =inu> :sin. 7FS N ; is an abbreviation of Network ile ;!stem, a platform independent technolog! created b! ;un *icros!stems that allows shared access to files stored on computers via an interface called the &irtual ile ;!stem D& ;E that runs on top of 9C"5,". Computers that share files are considered N ; servers, while those that access shared files are considered N ; clients. An individual computer can be either an N ; server, a N ; client or both. Ge can use N ; to provide shared storage for a RAC installation. ,n a production environment we would eMpect the N ; server to be a NA;, but for testing it can Wust as easil! be another server, or even one of the RAC nodes itself. 9o cut costs, this articles uses one of the RAC nodes as the source of the shared storage. 'bviousl!, this

means if that node goes down the whole database is lost, so itKs not a sensible idea to do this if !ou are testing high availabilit!. ,f !ou have access to a NA; or a third server !ou can easil! use that for the shared storage, making the whole solution much more resilient. Ghichever route !ou take, the fundamentals of the installation are the same. 'perating ;!stem ,nstallation 9his article uses 'racle (nterprise +inuM 2.3, but it will work eFuall! well on Cent'; 2 or Red =at (nterprise +inuM DR=(+E 2. A general pictorial guide to the operating s!stem installation can be found here. *ore specificall!, it should be a server installation with a minimum of %> swap, firewall and secure +inuM disabled. 'racle recommend a default server installation, but if !ou perform a custom installation include the following package groups: >N'*( Desktop (nvironment (ditors >raphical ,nternet 9eMt-based ,nternet Development +ibraries Development 9ools ;erver Configuration 9ools Administration 9ools 8ase ;!stem 9ools ) Gindow ;!stem

9o be consistent with the rest of the article, the following information should be set during the installation: RAC1: hostname: rac#.localdomain ," Address eth3: #-%.#./.%.#3# Dpublic addressE Default >atewa! eth3: #-%.#./.%.# Dpublic addressE ," Address eth#: #-%.#./.3.#3# Dprivate addressE Default >atewa! eth#: none RAC2:

hostname: rac%.localdomain ," Address eth3: #-%.#./.%.#3% Dpublic addressE Default >atewa! eth3: #-%.#./.%.# Dpublic addressE ," Address eth#: #-%.#./.3.#3% Dprivate addressE Default >atewa! eth#: none Bou are free to change the ," addresses to suit !our network, but remember to sta! consistent with those adWustments throughout the rest of the article. 'nce the basic installation is complete, install the following packages whilst logged in as the root user. O rom (nterprise +inuM 2 Disk # cd 5media5cdrom5;erver rpm -<vh binutils-%.N rpm -<vh elfutils-libelf-3.N rpm -<vh glibc-%.N rpm -<vh glibc-common-%.N rpm -<vh libaio-3.N rpm -<vh libgcc-?.N rpm -<vh libstdcPP-?.N rpm -<vh make-4.N cd 5 eWect O rom (nterprise +inuM 2 Disk % cd 5media5cdrom5;erver rpm -<vh compat-libstdcPP-44N rpm -<vh elfutils-libelf-devel-N rpm -<vh glibc-headersN rpm -<vh glibc-devel-%.N rpm -<vh libgompN rpm -<vh gcc-?.N rpm -<vh gcc-cPP-?.N rpm -<vh libaio-devel-3.N rpm -<vh libstdcPP-devel-?.N rpm -<vh uniM'D8C-%.N rpm -<vh uniM'D8C-devel-%.N cd 5 eWect O rom (nterprise +inuM 2 Disk 4 cd 5media5cdrom5;erver rpm -<vh s!sstat-6.N cd 5 eWect

Oracle ?nstallation 9rere8uisites "erform the following steps whilst logged into the RAC# virtual machine as the root user. 9he 5etc5hosts file must contain the following information. #%6.3.3.# localhost.localdomain localhost O "ublic #-%.#./.%.#3# rac#.localdomain rac# #-%.#./.%.#3% rac%.localdomain rac% O"rivate #-%.#./.3.#3# rac#-priv.localdomain rac#-priv #-%.#./.3.#3% rac%-priv.localdomain rac%-priv O&irtual #-%.#./.%.### rac#-vip.localdomain rac#-vip #-%.#./.%.##% rac%-vip.localdomain rac%-vip ONA; #-%.#./.%.#3# nas#.localdomain nas# Notice that the NA;# entr! is actuall! pointing to the RAC# node. ,f !ou are using a real NA; or a third server to provide !our shared storage put the correct ," address into the file. Add the following lines to the 5etc5s!sctl.conf file. kernel.shmmni 1 ?3-. O semaphores: semmsl, semmns, semopm, semmni kernel.sem 1 %23 4%333 #33 #%/ net.ipv?.ip:local:port:range 1 #3%? .2333 net.core.rmem:default1?#-?43? net.core.rmem:maM1?#-?43? net.core.wmem:default1%.%#?? net.core.wmem:maM1%.%#?? O Additional and amended parameters suggested b! @evin Closson Onet.core.rmem:default 1 2%?%// Onet.core.wmem:default 1 2%?%// Onet.core.rmem:maM 1 #.666%#. Onet.core.wmem:maM 1 #.666%#. net.ipv?.ipfrag:high:thresh12%?%// net.ipv?.ipfrag:low:thresh14-4%#. net.ipv?.tcp:rmem1?3-. 2%?%// #.666%#. net.ipv?.tcp:wmem1?3-. 2%?%// #.666%#. net.ipv?.tcp:timestamps13 net.ipv?.tcp:sack13 net.ipv?.tcp:window:scaling1# net.core.optmem:maM12%?%/6 net.core.netdev:maM:backlog1%233 sunrpc.tcp:slot:table:entries1#%/ sunrpc.udp:slot:table:entries1#%/ net.ipv?.tcp:mem1#.4/? #.4/? #.4/? Run the following command to change the current kernel parameters.

5sbin5s!sctl -p Add the following lines to the 5etc5securit!5limits.conf file. oracle soft nproc %3?6 oracle hard nproc #.4/? oracle soft nofile #3%? oracle hard nofile .224. Add the following line to the 5etc5pam.d5login file, if it does not alread! eMist. session reFuired pam:limits.so Disable secure linuM b! editing the 5etc5selinuM5config file, making sure the ;(+,N<) flag is set as follows. ;(+,N<)1disabled Alternativel!, this alteration can be done using the ><, tool D;!stem I Administration I ;ecurit! +evel and irewallE. Click on the ;(+inuM tab and disable the feature. Create the new groups and users. groupadd oinstall groupadd dba groupadd oper groupadd asmadmin useradd -u 233 -g oinstall -> dba,oper,asmadmin oracle passwd oracle Configure ;;= on each node in the cluster. +og in as the YoracleY user and perform the following tasks on each node. su - oracle mkdir T5.ssh chmod 633 T5.ssh 5usr5bin5ssh-ke!gen -t rsa O Accept the default settings. 9he R;A public ke! is written to the T5.ssh5id:rsa.pub file and the private ke! to the T5.ssh5id:rsa file. +og in as the YoracleY user on RAC#, generate an Yauthori7ed:ke!sY file on RAC# and cop! it to RAC% using the following commands. su - oracle cd T5.ssh cat id:rsa.pub II authori7ed:ke!s scp authori7ed:ke!s rac%:5home5oracle5.ssh5 NeMt, log in as the YoracleY user on RAC% and perform the following commands. su - oracle cd T5.ssh cat id:rsa.pub II authori7ed:ke!s scp authori7ed:ke!s rac#:5home5oracle5.ssh5 9he Yauthori7ed:ke!sY file on both servers now contains the public ke!s generated on all RAC nodes. 9o enable ;;= user eFuivalenc! on the cluster member nodes issue the following commands on each node. ssh rac# date

ssh rac% date ssh rac#.localdomain date ssh rac%.localdomain date eMec 5usr5bin5ssh-agent H;=(++ 5usr5bin5ssh-add Bou should now be able to ;;= and ;C" between servers without entering passwords. +ogin as the oracle user and add the following lines at the end of the .bash:profile file. O 'racle ;ettings 9*"15tmpJ eMport 9*" 9*"D,R1H9*"J eMport 9*"D,R 'RAC+(:=';9NA*(1rac#.localdomainJ eMport 'RAC+(:=';9NA*( 'RAC+(:8A;(15u3#5app5oracleJ eMport 'RAC+(:8A;( 'RAC+(:='*(1H'RAC+(:8A;(5product5##.#.35db:#J eMport 'RAC+(:='*( 'RAC+(:;,D1RAC#J eMport 'RAC+(:;,D 'RAC+(:9(R*1MtermJ eMport 'RAC+(:9(R* "A9=15usr5sbin:H"A9=J eMport "A9= "A9=1H'RAC+(:='*(5bin:H"A9=J eMport "A9= +D:+,8RARB:"A9=1H'RAC+(:='*(5lib:5lib:5usr5libJ eMport +D:+,8RARB:"A9= C+A;;"A9=1H'RAC+(:='*(5VR(:H'RAC+(:='*(5Wlib:H'RAC+(:='*(5rdbms5WlibJ eMport C+A;;"A9= if R H<;(R 1 YoracleY UJ then if R H;=(++ 1 Y5bin5kshY UJ then ulimit -p #.4/? ulimit -n .224. else ulimit -u #.4/? -n .224. fi fi Remember to set the correct values for the 'RAC+(:;,D and 'RAC+(:=';9NA*( on the second node. Create S2are /isks irst we need to set up some N ; shares. ,n this case we will do this on the RAC# node, but !ou can do the on a NA; or a third server if !ou have one available. 'n the RAC# node create the following directories. mkdir 5shared:config mkdir 5shared:crs mkdir 5shared:home mkdir 5shared:data Add the following lines to the 5etc5eMports file. 5shared:config 5shared:crs NDrw,s!nc,no:wdela!,insecure:locks,no:root:sFuashE NDrw,s!nc,no:wdela!,insecure:locks,no:root:sFuashE

5shared:home NDrw,s!nc,no:wdela!,insecure:locks,no:root:sFuashE 5shared:data NDrw,s!nc,no:wdela!,insecure:locks,no:root:sFuashE Run the following command to eMport the N ; shares. chkconfig nfs on service nfs restart 'n both RAC# and RAC% create the directories in which the 'racle software will be installed. mkdir -p 5u3#5app5crs5product5##.#.35crs mkdir -p 5u3#5app5oracle5product5##.#.35db:# mkdir -p 5u3#5oradata mkdir -p 5u3#5shared:config chown -R oracle:oinstall 5u3#5app 5u3#5app5oracle 5u3#5oradata 5u3#5shared:config chmod -R 662 5u3#5app 5u3#5app5oracle 5u3#5oradata 5u3#5shared:config Add the following lines to the Y5etc5fstabY file. 9he mount options are suggestions from @evin Closson. nas#:5shared:config 5u3#5shared:config nfs rw,bg,hard,nointr,tcp,vers14,timeo1433,rsi7e14%6./,wsi7e14%6./,actimeo13 3 3 nas#:5shared:crs 5u3#5app5crs5product5##.#.35crs nfs rw,bg,hard,nointr,tcp,vers14,timeo1433,rsi7e14%6./,wsi7e14%6./,actimeo13 3 3 nas#:5shared:home 5u3#5app5oracle5product5##.#.35db:# nfs rw,bg,hard,nointr,tcp,vers14,timeo1433,rsi7e14%6./,wsi7e14%6./,actimeo13 3 3 nas#:5shared:data 5u3#5oradata nfs rw,bg,hard,nointr,tcp,vers14,timeo1433,rsi7e14%6./,wsi7e14%6./,actimeo13 3 3 *ount the N ; shares on both servers. mount 5u3#5shared:config mount 5u3#5app5crs5product5##.#.35crs mount 5u3#5app5oracle5product5##.#.35db:# mount 5u3#5oradata Create the shared 'CR Configuration and &oting Disk files. touch 5u3#5shared:config5ocr:configuration touch 5u3#5shared:config5voting:disk *ake sure the permissions on the shared directories are correct. chown -R oracle:oinstall 5u3#5shared:config chown -R oracle:oinstall 5u3#5app5crs5product5##.#.35crs chown -R oracle:oinstall 5u3#5app5oracle5product5##.#.35db:# chown -R oracle:oinstall 5u3#5oradata 8efore installing the clusterware, check the prereFuisites have been met using the Yruncluvf!.shY utilit! in the clusterware root director!. 5mountpoint5clusterware5runcluvf!.sh stage -pre crsinst -n rac#,rac% -verbose ,f !ou get an! failures be sure to correct them before proceeding.

?nstall t2e Clusterware Software <n7ip the clusterware and database software. un7ip linuM:##gR#:clusterware.7ip un7ip linuM:##gR#:database.7ip +ogin to RAC# as the oracle user and start the 'racle installer. cd clusterware .5run,nstaller'n the YGelcomeY screen, click the YNeMtY button.

Accept the default inventor! location b! clicking the YNeMtY button.

(nter the appropriate name and path for the 'racle =ome and click the YNeMtY button

Gait while the prereFuisite checks are done. ,f !ou have an! failures correct them and retr! the tests before clicking the YNeMtY button.

9he Y;pecif! Cluster ConfigurationY screen shows onl! the RAC# node in the cluster. Click the YAddY button to continue.

(nter the details for the RAC% node and click the Y'@Y button.

Click the YNeMtY button to continue.

9he Y;pecific Network ,nterface <sageY screen defines how each network interface will be used. =ighlight the Yeth3Y interface and click the Y(ditY button.

;et the Yeht3Y interface t!pe to Y"ublicY and click the Y'@Y button.

+eave the Yeth#Y interface as private and click the YNeMtY button.

Click the Y(Mternal Redundanc!Y option, enter Y5u3#5shared:config5ocr:configurationY as the 'CR +ocation and click the YNeMtY button. 9o have greater redundanc! we would need to define another shared disk for an alternate location.

Click the Y(Mternal Redundanc!Y option, enter Y5u3#5shared:config5voting:diskY as the &oting Disk +ocation and click the YNeMtY button. 9o have greater redundanc! we would need to define another shared disk for an alternate location.

'n the Y;ummar!Y screen, click the Y,nstallY button to continue.

Gait while the installation takes place.

'nce the install is complete, run the orainstRoot.sh and root.sh scripts on both nodes as directed on the following screen.

9he output from the orainstRoot.sh file should look something like that listed below. O cd 5u3#5app5ora,nventor! O .5orainstRoot.sh Changing permissions of 5u3#5app5ora,nventor! to 663. Changing groupname of 5u3#5app5ora,nventor! to oinstall. 9he eMecution of the script is complete O 9he output of the root.sh will var! a little depending on the node it is run on. 9he following teMt is the output from the RAC# node. O cd 5u3#5app5crs5product5##.#.35crs O .5root.sh GARN,N>: director! K5u3#5app5crs5product5##.#.3K is not owned b! root GARN,N>: director! K5u3#5app5crs5productK is not owned b! root GARN,N>: director! K5u3#5app5crsK is not owned b! root GARN,N>: director! K5u3#5appK is not owned b! root Checking to see if 'racle CR; stack is alread! configured 5etc5oracle does not eMist. Creating it now. ;etting the permissions on 'CR backup director! ;etting up Network socket directories 'racle Cluster Registr! configuration upgraded successfull! 9he director! K5u3#5app5crs5product5##.#.3K is not owned b! root. Changing owner to root 9he director! K5u3#5app5crs5productK is not owned b! root. Changing owner to root 9he director! K5u3#5app5crsK is not owned b! root. Changing owner to root 9he director! K5u3#5appK is not owned b! root. Changing owner to root ;uccessfull! accumulated necessar! 'CR ke!s. <sing ports: C;;1?-/-2 CR;1?-/-. (&*C1?-/-/ and (&*R1?-/-6. node \nodenumberI: \nodenameI \private interconnect nameI \hostnameI node #: rac# rac#-priv rac# node %: rac% rac%-priv rac% Creating 'CR ke!s for user KrootK, privgrp KrootK.. 'peration successful. Now formatting voting device: 5u3#5shared:config5voting:disk ormat of # voting devices complete. ;tartup will be Fueued to init within 43 seconds. Adding daemons to inittab (Mpecting the CR; daemons to be up within .33 seconds. Cluster ;!nchroni7ation ;ervices is active on these nodes. rac# Cluster ;!nchroni7ation ;ervices is inactive on these nodes. rac% +ocal node checking complete. Run root.sh on remaining nodes to start CR; daemons. O 9he output from the RAC% node is listed below. O 5u3#5app5crs5product5##.#.35crs O .5root.sh GARN,N>: director! K5u3#5app5crs5product5##.#.3K is not owned b! root

GARN,N>: director! K5u3#5app5crs5productK is not owned b! root GARN,N>: director! K5u3#5app5crsK is not owned b! root GARN,N>: director! K5u3#5appK is not owned b! root Checking to see if 'racle CR; stack is alread! configured 5etc5oracle does not eMist. Creating it now. ;etting the permissions on 'CR backup director! ;etting up Network socket directories 'racle Cluster Registr! configuration upgraded successfull! 9he director! K5u3#5app5crs5product5##.#.3K is not owned b! root. Changing owner to root 9he director! K5u3#5app5crs5productK is not owned b! root. Changing owner to root 9he director! K5u3#5app5crsK is not owned b! root. Changing owner to root 9he director! K5u3#5appK is not owned b! root. Changing owner to root clscfg: (),;9,N> configuration version ? detected. clscfg: version ? is ## Release #. ;uccessfull! accumulated necessar! 'CR ke!s. <sing ports: C;;1?-/-2 CR;1?-/-. (&*C1?-/-/ and (&*R1?-/-6. node \nodenumberI: \nodenameI \private interconnect nameI \hostnameI node #: rac# rac#-priv rac# node %: rac% rac%-priv rac% clscfg: Arguments check out successfull!. N' @(B; G(R( GR,99(N. ;uppl! -force parameter to override. -force is destructive and will destro! an! previous cluster configuration. 'racle Cluster Registr! for cluster has alread! been initiali7ed ;tartup will be Fueued to init within 43 seconds. Adding daemons to inittab (Mpecting the CR; daemons to be up within .33 seconds. Cluster ;!nchroni7ation ;ervices is active on these nodes. rac# rac% Cluster ;!nchroni7ation ;ervices is active on all the nodes. Gaiting for the 'racle CR;D and (&*D to start Gaiting for the 'racle CR;D and (&*D to start 'racle CR; stack installed and running under initD#*E Running vipcaDsilentE for configuring nodeapps Creating &," application resource on D%E nodes... Creating >;D application resource on D%E nodes... Creating 'N; application resource on D%E nodes... ;tarting &," application resource on D%E nodes... ;tarting >;D application resource on D%E nodes... ;tarting 'N; application resource on D%E nodes... Done. O =ere !ou can see that some of the configuration steps are omitted as the! were done b! the first node. ,n addition, the final part of the script ran the &irtual ," Configuration Assistant D&,"CAE in silent

mode. Bou should now return to the Y(Mecute Configuration ;criptsY screen on RAC# and click the Y'@Y button.

Gait for the configuration assistants to complete.

Ghen the installation is complete, click the Y(MitY button to leave the installer.

9he clusterware installation is now complete. ?nstall t2e /ata%ase Software +ogin to RAC# as the oracle user and start the 'racle installer. cd database .5run,nstaller 'n the YGelcomeY screen, click the YNeMtY button.

;elect the Y(nterprise (ditionY option and click the YNeMtY button.

(nter the name and path for the 'racle =ome and click the YNeMtY button.

;elect the YCluster ,nstallY option and make sure both RAC nodes are selected, the click the YNeMtY button.

Gait while the prereFuisite checks are done. ,f !ou have an! failures correct them and retr! the tests before clicking the YNeMtY button.

;elect the Y,nstall ;oftware onl!Y option, then click the YNeMtY button.

'n the Y;ummar!Y screen, click the Y,nstallY button to continue.

Gait while the database software installs.

(Mecute the Yroot.shY scripts on both nodes, as instructed on the Y(Mecute Configuration scriptsY screen, then click the Y'@Y button.

Ghen the installation is complete, click the Y(MitY button to leave the installer.

Create a /ata%ase usin. t2e /@CA +ogin to RAC# as the oracle user and start the Database Configuration Assistant. dbca 'n the YGelcomeY screen, select the Y'racle Real Application Clusters databaseY option and click the YNeMtY button.

;elect the YCreate a DatabaseY option and click the YNeMtY button.

=ighlight both RAC nodes and click the YNeMtY button.

;elect the YCustom DatabaseY option and click the YNeMtY button.

(nter the values YRAC.G'R+DY and YRACY for the >lobal Database Name and ;,D "refiM respectivel!, then click the YNeMtY button.

Accept the management options b! clicking the YNeMtY button. ,f !ou are attempting the installation on a server with limited memor!, !ou ma! prefer not to configure (nterprise *anager at this time.

(nter database passwords then click the YNeMtY button.

;elect the YCluster ile ;!stemY option, then click the YNeMtY button. ;elect the Y<se 'racle-*anaged ilesY option and enter Y5u3#5oradata5Y as the database location, then click the YNeMtY button. Check the Y;pecif! lash Recover! AreaY option and and enter Y5u3#5oradata5Y as the location, then

click the YNeMtY button. Note., wouldnKt normall! eMpect to see the flash recover! area and datafiles in the same location, but this is onl! a test. <ncheck all but the Y(nterprise *anager Repositor!Y option, then click the Y;tandard Database Components...Y button. <ncheck all but the Y'racle V&*Y and Y'racle )*+ D8Y options, then click the Y'@Y button, followed b! the YNeMtY button on the previous screen. ,f !ou are attempting the installation on a server with limited memor!, !ou ma! prefer not to install the V&* at this time. Accept the Y9!picalY memor! management option b! clicking the YNeMtY button. Accept the ##g enhanced securit! settings b! clicking the YNeMtY button.

Accept the automatic maintenance tasks b! clicking the YNeMtY button.

Accept the database storage settings b! clicking the YNeMtY button. Accept the database creation options b! clicking the Y inishY button. Accept the summar! information b! clicking the Y'@Y button. Gait while the database is created. Ghen prompted, click the YBesY button to configure the listeners with the default settings. 'nce the database creation is complete !ou are presented with the following screen. *ake a note of

the information on the screen and click the Y(MitY button. 9he RAC database creation is now complete. A7S Confi.uration 'nce the installation is complete, the YH'RAC+(:='*(5network5admin5listener.oraY file in the shared H'RAC+(:='*( will contain the following entries. O listener.ora Network Configuration ile: 5u3#5app5oracle5product5##.#.35db:#5network5admin5listener.ora O >enerated b! 'racle configuration tools. +,;9(N(R:RAC% 1 DD(;CR,"9,'N:+,;9 1 DD(;CR,"9,'N 1 DADDR(;;:+,;9 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac%-vipED"'R9 1 #2%#ED," 1 ,R;9EE E DADDR(;;:+,;9 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 #-%.#./.%.#3%ED"'R9 1 #2%#ED," 1 ,R;9EE E DADDR(;;:+,;9 1 DADDR(;; 1 D"R'9'C'+ 1 ,"CED@(B 1 ()9"R'CEE E E E +,;9(N(R:RAC# 1 DD(;CR,"9,'N:+,;9 1 DD(;CR,"9,'N 1 DADDR(;;:+,;9 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac#-vipED"'R9 1 #2%#ED," 1 ,R;9EE E DADDR(;;:+,;9 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 #-%.#./.%.#3#ED"'R9 1 #2%#ED," 1 ,R;9EE E DADDR(;;:+,;9 1 DADDR(;; 1 D"R'9'C'+ 1 ,"CED@(B 1 ()9"R'CEE E E E 9he shared YH'RAC+(:='*(5network5admin5tnsnames.oraY file will contain the following entries. O tnsnames.ora Network Configuration ile: 5u3#5app5oracle5product5##.#.35db:#5network5admin5tnsnames.ora O >enerated b! 'racle configuration tools. RAC 1 DD(;CR,"9,'N 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac%-vipED"'R9 1 #2%#EE DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac#-vipED"'R9 1 #2%#EE

D+'AD:8A+ANC( 1 !esE DC'NN(C9:DA9A 1 D;(R&(R 1 D(D,CA9(DE D;(R&,C(:NA*( 1 RAC.G'R+DE E E +,;9(N(R;:RAC 1 DADDR(;;:+,;9 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac%-vipED"'R9 1 #2%#EE DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac#-vipED"'R9 1 #2%#EE E RAC% 1 DD(;CR,"9,'N 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac%-vipED"'R9 1 #2%#EE DC'NN(C9:DA9A 1 D;(R&(R 1 D(D,CA9(DE D;(R&,C(:NA*( 1 RAC.G'R+DE D,N;9ANC(:NA*( 1 RAC%E E E RAC# 1 DD(;CR,"9,'N 1 DADDR(;; 1 D"R'9'C'+ 1 9C"ED=';9 1 rac#-vipED"'R9 1 #2%#EE DC'NN(C9:DA9A 1 D;(R&(R 1 D(D,CA9(DE D;(R&,C(:NA*( 1 RAC.G'R+DE D,N;9ANC(:NA*( 1 RAC#E E E 9his configuration allows direct connections to specific instance, or using a load balanced connection to the main service. H sFlplus 5 as s!sdba ;C+I C'NN s!s5passwordSrac# A; ;B;D8A Connected. ;C+I ;(+(C9 instance:name, host:name R'* vHinstanceJ ,N;9ANC(:NA*( =';9:NA*( ---------------- ---------------------------------------------------------------RAC# rac#.l!nM.co.uk ;C+I C'NN s!s5passwordSrac% A; ;B;D8A Connected. ;C+I ;(+(C9 instance:name, host:name R'* vHinstanceJ ,N;9ANC(:NA*( =';9:NA*(

---------------- ---------------------------------------------------------------RAC% rac%.l!nM.co.uk ;C+I C'NN s!s5passwordSrac A; ;B;D8A Connected. ;C+I ;(+(C9 instance:name, host:name R'* vHinstanceJ ,N;9ANC(:NA*( =';9:NA*( ---------------- ---------------------------------------------------------------RAC# rac#.l!nM.co.uk ;C+I C2eck t2e Status of t2e RAC 9here are several wa!s to check the status of the RAC. 9he srvctl utilit! shows the current configuration and status of the RAC database. H srvctl config database -d RAC rac# RAC# 5u3#5app5oracle5product5##.#.35db:# rac% RAC% 5u3#5app5oracle5product5##.#.35db:# H srvctl status database -d RAC ,nstance RAC# is running on node rac# ,nstance RAC% is running on node rac% 9he &HAC9,&(:,N;9ANC(; view can also displa! the current status of the instances. H sFlplus 5 as s!sdba ;C+N"lus: Release ##.#.3...3 - "roduction on 9ue Aug #? #-:%#:46 %336 Cop!right DcE #-/%, %336, 'racle. All rights reserved. Connected to: 'racle Database ##g (nterprise (dition Release ##.#.3...3 - "roduction Gith the "artitioning, Real Application Clusters, '+A", Data *ining and Real Application 9esting options ;C+I ;(+(C9 N R'* vHactive:instancesJ ,N;9:N<*8(R ,N;9:NA*( ----------- -----------------------------------------------------------# rac#.l!nM.co.uk:RAC# % rac%.l!nM.co.uk:RAC% ;C+I inall!, the >&H allow !ou to displa! global information for the whole RAC. ;C+I ;(+(C9 inst:id, username, sid, serialO R'* gvHsession G=(R( username ,; N'9 N<++J ,N;9:,D <;(RNA*( ;,D ;(R,A+O ---------- ------------------------------ ---------- ----------

% ;B; % ;B;*AN % ;B; % ;B;*AN % ;B;*AN % ;B; % ;B;*AN % D8;N*" % D8;N*" % D8;N*" % ;B;*AN

##. ##/ ###%# #%% #%4 #%? #%#43 #4? #?2

/?# 6/ #--% # %% 23 # . # 24

,N;9:,D <;(RNA*( ;,D ;(R,A+O ---------- ------------------------------ ---------- ---------% ;B; #63 #? # ;B;*AN ##6 #?? # ;B;*AN ##/ #/. # ;B;*AN ##4# # ;B; #%# 4 # ;B;*AN #%% #.% # ;B;*AN #%4 -# D8;N*" #%? 4 # ;B; #%2 % # ;B; #%. ## ;B; #%6 %-# ,N;9:,D <;(RNA*( ;,D ;(R,A+O ---------- ------------------------------ ---------- ---------# D8;N*" #4# .# # ;B; #63 #6 %? rows selected. ;C+I ,f !ou have configured (nterprise *anager, it can be used to view the configuration and current status of the database using a <R+ like Yhttps:55rac#.localdomain:##2/5emY. /irect 7FS Client or improved N ; performance, 'racle recommend using the Direct N ; Client shipped with 'racle ##g. 9he direct N ; client looks for N ; details in the following locations: #. H'RAC+(:='*(5dbs5oranfstab %. 5etc5oranfstab 4. 5etc5mtab ;ince we alread! have our N ; mount point details in the Y5etc5fstabY, and therefore the Y5etc5mtabY file also, there is no need to configure an! eMtra connection details. or the client to work we need to switch the libodm##.so librar! for the libnfsodm##.so librar!, as shown below.

srvctl stop database -d RAC cd H'RAC+(:='*(5lib mv libodm##.so libodm##.so:stub ln -s libnfsodm##.so libodm##.so srvctl start database -d RAC Gith the configuration complete, !ou can see the direct N ; client usage via the following views: vHdnfs:servers vHdnfs:files vHdnfs:channels vHdnfs:stats or eMample: ;C+I ;(+(C9 svrname, dirname R'* vHdnfs:serversJ ;&RNA*( D,RNA*( ------------- ----------------nas# 5shared:data ;C+I 9he Direct N ; Client supports direct ,5' and as!nchronous ,5' b! default. 'racle Database ##g Release % D##.%E ,nstallation 'n edora #? D #?E <osts File 9he Y5etc5hostsY file must contain a full! Fualified name for the server. \,"-addressI \full!-Fualified-machine-nameI \machine-nameI Set Bernel 9arameters 'racle recommend the following minimum parameter settings. fs.aio-maM-nr 1 #3?/26. fs.file-maM 1 ./#26?? kernel.shmall 1 %3-6#2% kernel.shmmaM 1 24./63-#% kernel.shmmni 1 ?3-. kernel.sem 1 %23 4%333 #33 #%/ net.ipv?.ip:local:port:range 1 -333 .2233 net.core.rmem:default 1 %.%#?? net.core.rmem:maM 1 ?#-?43? net.core.wmem:default 1 %.%#?? net.core.wmem:maM 1 #3?/2/. 9he current values can be tested using the following command. 5sbin5s!sctl -a ] grep \param-nameI Add or amend the following lines in the Y5etc5s!sctl.confY file. fs.aio-maM-nr 1 #3?/26.

fs.file-maM 1 ./#26?? kernel.shmall 1 %3-6#2% kernel.shmmaM 1 24./63-#% kernel.shmmni 1 ?3-. O semaphores: semmsl, semmns, semopm, semmni kernel.sem 1 %23 4%333 #33 #%/ net.ipv?.ip:local:port:range 1 -333 .2233 net.core.rmem:default1%.%#?? net.core.rmem:maM1?#-?43? net.core.wmem:default1%.%#?? net.core.wmem:maM1#3?/2/. Run the following command to change the current kernel parameters. 5sbin5s!sctl -p Add the following lines to the Y5etc5securit!5limits.confY file. oracle soft nproc %3?6 oracle hard nproc #.4/? oracle soft nofile #3%? oracle hard nofile .224. Add the following line to the Y5etc5pam.d5loginY file, if it does not alread! eMist. session reFuired pam:limits.so ;tart the irewall administration dialog D;!stem I Administration I irewallE. Click the YDisableY button followed b! the appl! button on the toolbar, then close the dialog. Disable secure linuM b! editing the 5etc5selinuM5config file, making sure the ;(+,N<) flag is set as follows. ;(+,N<)1disabled Alternativel!, this alteration can be done using the ><, tool DApplications I ;!stem ;ettings I ;ecurit! +evelE. Click on the ;(+inuM tab and disable the feature. ,f ;(+inuM is disabled after installation, the server will need a reboot for the change to take effect. Setu" ,f !ou have installed the suggested package groups during the installation, the maWorit! of the necessar! packages will alread! be installed. 9he following packages are listed as reFuired, including the 4%-bit version of some of the packages. !um install binutils !um install compat-libstdcPP-44 !um install compat-libstdcPP-44.i./. !um install elfutils-libelf !um install elfutils-libelf-devel !um install gcc !um install gcc-cPP !um install glibc !um install glibc.i./. !um install glibc-common !um install glibc-devel !um install glibc-devel.i./.

!um install glibc-headers !um install ksh !um install libaio !um install libaio.i./. !um install libaio-devel !um install libaio-devel.i./. !um install libgcc !um install libgcc.i./. !um install libstdcPP !um install libstdcPP.i./. !um install libstdcPP-devel !um install make !um install numactl-devel !um install s!sstat !um install uniM'D8C !um install uniM'D8C.i./. !um install uniM'D8C-devel !um install uniM'D8C-devel.i./. Create the new groups and users. groupadd oinstall groupadd dba groupadd oper groupadd asmadmin useradd -g oinstall -> dba,oper,asmadmin oracle passwd oracle Note. Ge are not going to use the YasmadminY group, since this installation will not use A;*. Create the directories in which the 'racle software will be installed. mkdir -p 5u3#5app5oracle5product5##.%.35db:# chown -R oracle:oinstall 5u3# chmod -R 662 5u3# +ogin as root and issue the following command. Mhost P\machine-nameI (dit the Y5etc5redhat-releaseY file replacing the current release information Y edora release #? D+aughlinEY with the following. redhat release 2 +ogin as the oracle user and add the following lines at the end of the .bash:profile file. O 'racle ;ettings 9*"15tmpJ eMport 9*" 9*"D,R1H9*"J eMport 9*"D,R 'RAC+(:=';9NA*(1fedora#?.localdomainJ eMport 'RAC+(:=';9NA*( 'RAC+(:<NCNA*(1D8##>J eMport 'RAC+(:<NCNA*( 'RAC+(:8A;(15u3#5app5oracleJ eMport 'RAC+(:8A;( 'RAC+(:='*(1H'RAC+(:8A;(5product5##.%.35db:#J eMport 'RAC+(:='*( 'RAC+(:;,D1D8##>J eMport 'RAC+(:;,D 'RAC+(:9(R*1MtermJ eMport 'RAC+(:9(R*

"A9=15usr5sbin:H"A9=J eMport "A9= "A9=1H'RAC+(:='*(5bin:H"A9=J eMport "A9= +D:+,8RARB:"A9=1H'RAC+(:='*(5lib:5lib:5usr5libJ eMport +D:+,8RARB:"A9= C+A;;"A9=1H'RAC+(:='*(5VR(:H'RAC+(:='*(5Wlib:H'RAC+(:='*(5rdbms5WlibJ eMport C+A;;"A9= if R H<;(R 1 YoracleY UJ then if R H;=(++ 1 Y5bin5kshY UJ then ulimit -p #.4/? ulimit -n .224. else ulimit -u #.4/? -n .224. fi fi ?nstallation +og into the oracle user. ,f !ou are using ) emulation then set the D,;"+AB environmental variable. D,;"+AB1\machine-nameI:3.3J eMport D,;"+AB ;tart the 'racle <niversal ,nstaller D'<,E b! issuing the following command in the database director!. .5run,nstaller "roceed with the installation of !our choice. Bou can see the installation , performed b! clicking on the links below to see screen shots of each stage. Note- 9he prereFuisites checks will show a number of packages missing, but these can be ignored. 9he emagent will fail to link and produce an error message. Ghen this happens, click the YContinueY button and the installation will complete.