Oracle RAC deployment process

lsb_release -a
vmware-vdiskmanager.exe -c -s 20000Mb -a lsilogic -t 2 D:\Oracle_RAC\ocr.vmdk
vmware-vdiskmanager.exe -c -s 20000Mb -a lsilogic -t 2 D:\Oracle_RAC\ocr2.vmdk
vmware-vdiskmanager.exe -c -s 20000Mb -a lsilogic -t 2 D:\Oracle_RAC\votingdisk.vmdk
vmware-vdiskmanager.exe -c -s 30000Mb -a lsilogic -t 2 D:\Oracle_RAC\data.vmdk
vmware-vdiskmanager.exe -c -s 20000Mb -a lsilogic -t 2 D:\Oracle_RAC\backup.vmdk
RAC1

Configure the vmx virtual machine configuration file in the virtual machine RAC1 RAC2 directory and add the following at the end of the line:
scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"
scsi1.sharedBus = "virtual"
scsi1:1.present = "TRUE"
scsi1:1.mode = "independent-persistent"
scsi1:1.filename = "D:\Oracle_RAC\ocr.vmdk"
scsi1:1.deviceType = "plainDisk"
scsi1:2.present = "TRUE"
scsi1:2.mode = "independent-persistent"
scsi1:2.filename = "D:\Oracle_RAC\votingdisk.vmdk"
scsi1:2.deviceType = "plainDisk"
scsi1:3.present = "TRUE"
scsi1:3.mode = "independent-persistent "
scsi1:3.filename = "D:\Oracle_RAC\data.vmdk"
scsi1:3.deviceType = "plainDisk"
scsi1:4.present = "TRUE"
scsi1:4.mode = "independent-persistent"
scsi1:4.filename = "D:\Oracle_RAC\backup.vmdk"
scsi1:4.deviceType = "plainDisk"
scsi1:5.present = "TRUE"
scsi1:5.mode = "independent-persistent"
scsi1:5.filename = "D:\Oracle_RAC\ocr2.vmdk"
scsi1:5.deviceType = "plainDisk"
disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.DataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"

Disable selinux
setenforce 0
[root@rac1 ~]# vi /etc/selinux/config
SELINUX=disabled
Disable firewall
service iptables stop
chkconfig iptables off
Uninstall NTP service
[root@rac2 ~]# rpm -qa |grep ntp
[root@rac2 ~ ]# rpm -e --nodeps ntp-4.2.6p5-1.el6.centos.x86_64
[root@rac2 ~]# rpm -e --nodeps ntpdate-4.2.6p5-1.el6.centos.x86_64
[root@ rac2 ~]#mv /etc/ntp.conf /etc/ntp.conf.bak

hostname rac1
hostname rac2
RAC1
eth0 192.168.100.103
eht1 10.10.10.100
RAC2
eth0 192.168.100.104
eth1 10.10.10.101
vi /etc/sysconfig/network

vi /etc/hosts
192.168.100.103 rac1
192.168.100.104 rac2
192.168.100.105 rac1-vip
192.168.100.108 rac2-vip
10.10.10.100 rac1-priv
10.10.10.101 rac2-priv
192.168.100.88 scan-ip

Create related users:
groupadd -g 1300 dba
groupadd -g 1301 oper
groupadd -g 1000 oinstall
groupadd -g 1200 asmadmin
groupadd -g 1201 asmdba
groupadd -g 1202 asmoper
useradd -m -u 1100 -g oinstall -G asmadmin,asmdba,asmoper -s /bin/bash grid
useradd -m -u 1101 -g oinstall -G dba,oper,asmdba -s /bin/bash oracle
set the relevant account password:
passwd oracle passwd grid
RAC1 RAC2 mutual configuration ssh key-free login
in the user The root oracle grid executes the following 2 lines of commands:
RAC1, RAC2:
ssh-keygen -t rsa
ssh-keygen -t dsa
Switch users and configure the following ssh commands:
su - oracle
su - grid
RAC1
[oracle@RAC1 ~]$
ssh rac1 cat ~ /.ssh/id_rsa.pub >> authorized_keys
ssh rac2 cat ~/.ssh/id_rsa.pub >> authorized_keys
ssh rac1 cat ~/.ssh/id_dsa.pub >> authorized_keys
ssh rac2 cat ~/.ssh/id_dsa.pub >> authorized_keys
[oracle@RAC1 .ssh]$ scp authorized_keys rac2:~/.ssh/
[oracle@RAC1 .ssh]$ chmod 600 authorized_keys
RAC2:
[oracle@RAC2 ~]$
ssh rac2 cat ~/.ssh/id_rsa.pub >> authorized_keys
ssh rac1 cat ~/.ssh/id_rsa.pub >> authorized_keys
ssh rac2 cat ~/.ssh/id_dsa.pub >> authorized_keys
ssh rac1 cat ~/.ssh/id_dsa.pub >> authorized_keys
[oracle@RAC2 .ssh]$ scp authorized_keys rac1:~/.ssh/
[oracle@RAC2 .ssh]$ chmod 600 authorized_keys
ssh rac1 date
ssh rac2 date
ssh rac1-priv date
ssh rac2-priv date

配置目录
mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/grid
mkdir -p /u01/app/oracle
chown -R grid:oinstall /u01
chown grid:oinstall /u01/app/11.2.0/grid
chown grid:oinstall /u01/app/grid
chown oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/

Set the kernel file:
vi /etc/sysctl.conf
fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=2097152
kernel.shmmax=4398046511104
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.ipv4.ip_local_port_range=9000 65500
net.core.rmem_default=262144 net.core.rmem_max
=
4194304 net.core.wmem_default=262144
net.core.wmem_max= 1048586 = 4194304 4194304 4194304 Reference value: kernel.shmmax =1054472192 (reference value) sysctl -p takes effect immediately




配置系统文件
vi /etc/security/limits.conf
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

Configure grid and oracle user environment variables
su - oracle
ORACLE environment variables
vi .bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=orcl1 # RAC1
export ORACLE_SID=orcl2 # RAC2
export ORACLE_UNQNAME=orcl
export ORACLE_BASE=/u01/app/ oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib :/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
umask 022
Make the configuration file effective source .bash_profile
GRID environment variable
su - grid
vi .bash_profile
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=+ASM1 # RAC1

export ORACLE_SID=+ASM2 # RAC2 can be configured with one

export ORACLE_BASE=/u01/app/grid
export ORACLE_HOME=/u01/app/11.2.0/grid
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
umask 022
使配置文件生效 source .bash_profile
配置login
[root@rac1 ~]# vi /etc/pam.d/login
session required pam_limits.so

Configure raw disks:
view unformatted disks
fdisk -l
ls /dev/sd
fdisk format command:
fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
Last w Command to save changes
Command (m for help): w
execute in sequence:
fdisk /dev/sdb
fdisk /dev/sdd
fdisk /dev/sdc
fdisk /dev/sdf
fdisk /dev/sde
vi /etc/udev/rules.d/60-raw.rules
ACTION=="add",KERNEL=="/dev/sdb1",RUN+='/bin/raw /dev/raw/raw1 %N"
ACTION== "add",ENV{MAJOR}=="8",ENV{MINOR}=="17",RUN+="/bin/raw /dev/raw/raw1 %M %m"
ACTION=="add",KERNEL =="/dev/sdc1",RUN+='/bin/raw /dev/raw/raw2 %N"
ACTION=="add",ENV{MAJOR}=="8",ENV{MINOR}=="33",RUN+="/bin/raw /dev/raw/raw2 %M %m"
ACTION=="add",KERNEL=="/dev/sdd1",RUN+='/bin/raw /dev/raw/raw3 %N"
ACTION=="add",ENV{MAJOR}=="8",ENV{MINOR}=="49",RUN+="/bin/raw /dev/raw/raw3 %M %m"
ACTION=="add",KERNEL=="/dev/sde1",RUN+='/bin/raw /dev/raw/raw4 %N"
ACTION=="add",ENV{MAJOR}=="8",ENV{MINOR}=="65",RUN+="/bin/raw /dev/raw/raw4 %M %m"
ACTION=="add",KERNEL=="/dev/sdf1",RUN+='/bin/raw /dev/raw/raw5 %N"
ACTION=="add",ENV{MAJOR}=="8",ENV{MINOR}=="81",RUN+="/bin/raw /dev/raw/raw5 %M %m"


[root@rac2 ~]# lsblk
View raw disk information:executes this command to view Next: ll /dev/raw/rawThe synchronization command is executed under RAC1 and RAC2: partprobeACTION=="add",KERNEL=="raw[1-5]",OWNER="grid",GROUP="asmadmin",MODE="660"

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 1000M 0 part /boot
├─sda2 8:2 0 3.9G 0 part [SWAP]
└─sda3 8:3 0 35.1G 0 part /
sdb 8:16 0 19.5G 0 disk
└─sdb1 8:17 0 19.5G 0 part
sdc 8:32 0 19.5G 0 disk
└─sdc1 8:33 0 19.5G 0 part
sdd 8:48 0 29.3G 0 disk
└─sdd1 8:49 0 29.3G 0 part
sde 8:64 0 19.5G 0 disk
└─sde1 8:65 0 19.5G 0 part
sdf 8:80 0 19.5G 0 disk
└─sdf1 8:81 0 19.5G 0 part
sr0 11:0 1 4.2G 0 rom
挂载光驱
mount /dev/sr0 /media/CentOS_6.5_Final (参考命令:mount /dev/cdrom /mnt/cdrom/ )
vi /etc/yum.repos.d/dvd.repo
[dvd]
name=dvd
baseurl=file:///media/CentOS_6.5_Final
gpgcheck=0
enabled=1
:wq!
安装依赖包:
[root@rac1 ~]# yum clean all
[root@rac1 ~]# yum makecache
[root@rac1 ~]# yum install gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel make sysstat
yum install binutils-2
compat-libcap1-1 compat-libstdc gcc-4 gcc-c++-4 glibc-2 glibc-devel-2 libgcc-4 libstdc++-4 libstdc++-devel-4 libaio-0 libaio-devel-0 make-3 sysstat-9 -y
mv /etc/yum.repos.d/CentOS-Base.repo /root
mv /etc/yum.repos.d/CentOS-Debuginfo.repo /root
mv /etc/yum.repos.d/CentOS-Media.repo /root
mv /etc/yum.repos.d/CentOS-Vault.repo /root
cp /root/CentOS-Base.repo /etc/yum.repos. d
cp /root/CentOS-Debuginfo.rep /etc/yum.repos.d
cp /root/CentOS-Media.repo /etc/yum.repos.d
cp /root/CentOS-Vault.repo /etc/yum.repos .d
yum install -y glibc-devel-
2.12-1.209.el6_9.2.i686 yum install -y libstdc++-4.4.7-18.el6.i686
yum install -y glibc.i686 glibc.x86_64
yum install -y elfutils- libelf-devel.i686
yum install -y elfutils-libelf

Install
the cvuqdisk package under the grid
xhost + #Enable all users to access the graphical desktop, this step needs to operate on the graphical interface
date -s 18:00:00
/u01/app/ oraInventory/orainstRoot.sh
/u01/app/11.2.0/grid/root.sh

/u01/app/11.2.0/grid/crs/install/crsconfig_params
[root@rac1 grid]# /u01/app/11.2.0/grid/root.sh
Running Oracle 11g root.sh script...
The following environment variables are set as:
ORACLE_OWNER= grid
ORACLE_HOME= /u01/app/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]:
The file "dbhome" already exists in /usr/local/bin. Overwrite it? (y/n)

Copying dbhome to /usr/local/bin ...
The file "oraenv" already exists in /usr/local/bin. Overwrite it? (y/n)

Copying oraenv to /usr/local/bin ...
The file "coraenv" already exists in /usr/local/bin. Overwrite it? (y/n)

y Copying coraenv to /usr/local/bin ...
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.sh script.
Now product-specific root actions will be performed.
2017-08-03 18:31:49: Parsing the host name
2017-08-03 18:31:49: Checking for super user privileges
2017-08-03 18:31:49: User has super user privileges
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
CRS is already configured on this node for crshome=0
Cannot configure two CRS instances on the same cluster.
Please deconfigure before proceeding with the configuration of new home.
[root@rac1 grid]#
Uninstall command
$GRID_HOME/crs/install/roothas.pl -delete -force -verbose
/u01/app/11.2.0/grid/crs/install/rootcrs.pl -delete -force -verbose
Existing OCR configuration found, aborting the configuration . Rerun configuration setup after deinstall at /u01/app/11.2.0/grid/crs/install/crsconfig_lib.pm line 10302.
Determine if RAC is OK
su - grid
crsctl status resource -t
modify network card rules
vi /etc/udev/rules .d/70-persistent-net.rules
troika not DG GG RAC
switch scan-ip command:
srvctl relocate scan_listener -i 1 -n rac2

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325251398&siteId=291194637