虛擬軟件vmare內安裝linux系統下的ORACLE數據的RAC環境

/opt  //安裝包路徑 並且解壓grid壓縮包

1、安裝系統、配置雙網卡網絡、配置共享磁盤(以rac02爲例)    

1.1 IP地址規劃


172.19.15.136 rac01

172.19.15.137 rac02

10.10.11.10 rac01priv

10.10.11.20 rac02priv

172.19.15.138 rac01vip

172.19.15.139 rac02vip

172.19.15.140 racscanip


192.168.47.151 rac01

192.168.47.152 rac02

10.11.12.51 rac01priv

10.11.12.52 rac02priv

192.168.47.153 rac01vip

192.168.47.154 rac02vip

192.168.47.155 racscanip

1.2 設置共享盤(兩個虛擬機配置都需要更改設置)

1.2.1 添加獨立 永久磁盤--共享盤路徑:H:\sharedisk\diskrac2\sharedisk*

1.2.2 更改獨立虛擬機配置(vmdk中添加、修改以下信息)

一:

scsi1.present = "TRUE"scsi1.virtualDev = "lsilogic"scsi1.sharedBus = "virtual"
scsi1:1.present = "TRUE"scsi1:1.mode = "independent-persistent"

scsi1:1.filename = "H:\sharedisk\diskrac2\sharediskOCR.vmdk"

scsi1:1.deviceType = "plainDisk"scsi1:2.present = "TRUE"

scsi1:2.mode = "independent-persistent"

scsi1:2.filename = "H:\sharedisk\diskrac2\sharediskrDate01.vmdk"

scsi1:2.deviceType = "plainDisk"

scsi1:3.present = "TRUE"

scsi1:3.mode = "independent-persistent"

scsi1:3.filename = "H:\sharedisk\diskrac2\sharediskrDate02.vmdk"

scsi1:3.deviceType = "plainDisk"

scsi1:4.present = "TRUE"

scsi1:4.mode = "independent-persistent"

scsi1:4.filename = "H:\sharedisk\diskrac2\sharediskrFlash.vmdk"

scsi1:4.deviceType = "plainDisk"
disk.locking = "false"

diskLib.dataCacheMaxSize = "0"

diskLib.dataCacheMaxReadAheadSize = "0"

diskLib.DataCacheMinReadAheadSize = "0"

diskLib.dataCachePageSize = "4096"

diskLib.maxUnsyncedWrites = "0"

disk.EnableUUID="TRUE"

二:

scsi1.present = "TRUE"

scsi1.virtualDev = "lsilogic"

scsi1.sharedBus = "virtual"

scsi1:0.present = "TRUE"

scsi1:0.fileName = "C:\sharedisk\RAC01\ocr1.vmdk"

scsi1:0.mode = "independent-persistent"

scsi1:0.deviceType = "plainDisk"

scsi1:1.present = "TRUE"

scsi1:1.fileName = "C:\sharedisk\RAC01\ocr2.vmdk"

scsi1:1.mode = "independent-persistent"

scsi1:1.deviceType = "plainDisk"

scsi1:2.present = "TRUE"

scsi1:2.fileName = "C:\sharedisk\RAC01\ocr3.vmdk"

scsi1:2.mode = "independent-persistent"

scsi1:2.deviceType = "plainDisk"

scsi1:3.present = "TRUE"

scsi1:3.fileName = "C:\sharedisk\RAC01\data.vmdk"

scsi1:3.mode = "independent-persistent"

scsi1:3.deviceType = "plainDisk"

scsi1:4.present = "TRUE"

scsi1:4.fileName = "C:\sharedisk\RAC01\fra.vmdk"

scsi1:4.mode = "independent-persistent"

scsi1:4.deviceType = "plainDisk"

floppy0.present = "FALSE"

disk.locking = "false"

diskLib.dataCacheMaxSize = "0"

diskLib.dataCacheMaxReadAheadSize = "0"

diskLib.DataCacheMinReadAheadSize = "0"

diskLib.dataCachePageSize = "4096"

diskLib.maxUnsyncedWrites = "0"

disk.EnableUUID="TRUE"

三:

scsi1.sharedBus = "virtual"

scsi1:0.deviceType = "plainDisk"

scsi1:1.deviceType = "plainDisk"

scsi1:2.deviceType = "plainDisk"

scsi1:3.deviceType = "plainDisk"

scsi1:4.deviceType = "plainDisk"

disk.locking = "false"

diskLib.dataCacheMaxSize = "0"

diskLib.dataCacheMaxReadAheadSize = "0"

diskLib.DataCacheMinReadAheadSize = "0"

diskLib.dataCachePageSize = "4096"

diskLib.maxUnsyncedWrites = "0"

disk.EnableUUID="TRUE"

2、配置OS    

2.1 關閉防火牆、selinux

[root@rac02 ~]# chkconfig iptables off

[root@rac02 ~]# service iptables status

[root@rac02 ~]# service iptables stop

[root@rac02 ~]# vi /etc/selinux/config              

 SELINUX=disabled    

2.2 修改host文件

[root@rac02 ~]# vi /etc/hosts

172.19.15.142 racd01

172.19.15.141 racd02

10.10.11.10 racd01priv

10.10.11.22 racd02priv

172.19.15.143 racd01vip

172.19.15.144 racd02vip

172.19.15.145 racdscanip    

2.3 配置yum源         

 2.3.1 配置本地yum源

[root@rac02 ~]#yum clean all

[root@rac02 ~]#mkdir /mnt/cdrommount -t iso9660 /dev/cdrom /mnt/cdrom/

[root@rac02 ~]#vi /etc/yum.repos.d/local.repo

[local]

name=local

baseurl=file:///mnt/cdrom

gpgcheck=0enabled=1         

2.3.2 配置163yum源

[root@rac02 ~]#vi /etc/yum.repos.d/163.repo

[163]

name=163

baseurl=http://mirrors.163.com/centos/7/os/x86_64/

gpgcheck=0enabled=1

#yum repolist    

2.4 安裝rpm包

[root@rac02 ~]#vi  yum.sh

yum install  compat-lib* 

yum install  binutils-2* 

yum install  gcc* 

yum install  glibc-2* 

yum install  glibc-devel-2* 

yum install  ksh 

yum install  libgcc-4*

 yum install  libstdc++-4*

 yum install  libstdc++-d*

 yum install libaio-0* 

yum install  libaio-d* 

yum install  sysstat-9*

yum install  make-3*

yum install binutils-2*

yum install libc*    

2.5 修改內核配置文件

[root@rac02 ~]#vi /etc/sysctl.conf

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 1054472192

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

net.ipv4.tcp_wmem = 262144 262144 262144

net.ipv4.tcp_rmem = 4194304 4194304 4194304

[root@rac02 ~]##sysctl -p   //立即生效。    

 2.6 修改用戶限制

[root@rac02 ~] #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    

 2.7配置Oracle軟件安裝組、用戶、環境變量、安裝目錄         

 2.7.1 #創建組

groupadd -g 1300 dbagroupadd -g 1301 opergroupadd -g 1000 oinstallgroupadd -g 1200 asmadmin

groupadd -g 1201 asmdbagroupadd -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         

2.7.2#配置目錄

mkdir -p /u01/app/11.2.0/grid

mkdir -p /u01/app/grid

mkdir -p /u01/app/oracle

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/chown -R grid:oinstall /u01

2.7.3#用戶環境變量修改home下的 .bash_profile(Oracle_sid需要根據節點不同進行修改)    

ORACLE用戶

export TMP=/tmp

export TMPDIR=$TMPexport ORACLE_SID=orc1  # rac01

export ORACLE_SID=orc2  # rac02

export ORACLE_UNQNAME=orc

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

$ source .bash_profile   //使配置文件生效    

GRID用戶

export TMP=/tmp

export TMPDIR=$TMP

export ORACLE_SID=+ASM1  # rac01

export ORACLE_SID=+ASM2  # rac02

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   //使配置文件生效    

2.8.配置grid及oracle用戶ssh互信         

 方法一:

#cd /software/grid/sshsetup

#./sshUserSetup.sh -user grid -hosts "rac01 rac02" -advanced -noPromptPassphrase

#./sshUserSetup.sh -user oracle -hosts "rac01 rac02" -advanced -noPromptPassphrase       

方法二:              

 1)在節點 1 上:                    

 [root@rac01 ~]$ su - grid                   

 [grid@rac01 ~]$ cd /home/grid/                   

 [grid@rac01 ~]$  mkdir~/.ssh                   

 [grid@rac01 ~]$ chmod   700 ~/.ssh                   

 [grid@rac01 ~]$ ssh-keygen -t rsa                   

 [grid@rac01 ~]$ ssh-keygen -t dsa              

 2)在節點2上:                   

[root@rac02 ~]$ su - grid                   

[grid@rac02 ~]$ cd /home/grid/                    

[grid@rac02 ~]$ mkdir  ~/.ssh                    

[grid@rac02 ~]$ chmod   700 ~/.ssh                   

[grid@rac01 ~]$ ssh-keygen -t rsa                   

[grid@rac01 ~]$ ssh-keygen -t dsa            

3) 僅在一個節點操作,以rac01爲例:                   

 [grid@rac01 ~]$ touch ~/.ssh/authorized_keys                   

 [grid@rac01 ~]$ cd ~/.ssh                   

[[email protected]]$ ssh racd01 cat ~/.ssh/id_rsa.pub >> authorized_keys                   

[[email protected]]$ ssh racd02 cat ~/.ssh/id_rsa.pub >> authorized_keys                   

[[email protected]]$ ssh racd01 cat ~/.ssh/id_dsa.pub >> authorized_keys                   

[[email protected]]$ ssh racd02 cat ~/.ssh/id_dsa.pub >> authorized_keys                   

[[email protected]]$pwd                   

[[email protected]]$scp authorized_keys racd02:`pwd`              

 4)每個節點均操作                   

[grid@rac01 ~]$ chmod 600 ~/.ssh/authorized_keys                   

[grid@rac01 ~]$ chmod 600 ~/.ssh/authorized_keys               

5)在要運行oui的接單以grid用戶運行,以racd01爲例:                   

[[email protected]]$exec /usr/bin/ssh-agent $SHELL                   

[[email protected]]$ssh-add             

 6)檢查互信                   

$ ssh rac01 date                   

$ ssh rac02 date                   

$ ssh rac01priv date                   

$ ssh rac02priv date    

2.9 配置裸設備[root@rac01 ~]#fdisk /dev/sdb         

 n   p   1    +2G         

 n   p   2     w 

[root@rac01 ~]# 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"

ACTION=="add",KERNEL=="raw*",OWNER="grid",GROUP="asmadmin",MODE="660"

[root@rac01 ~]#start_udev    //無法正確安裝時,使用下列兩個語句    

 // #raw /dev/raw/raw1 /dev/sdb1      

// #raw /dev/raw/raw2 /dev/sdb2

[root@rac01 ~]#raw -qa  =等價於= ls -lrt /dev/raw

[root@rac01 ~]#ll /dev/raw

[root@rac01 ~]#partprobe

3、安裝grid

[root@rac01 /]#xhost +

[root@rac01 /]# su - grid

[grid@rac01 ~]$ export

[grid@rac01 ~]$ cd /software/grid/

[grid@rac01 grid]$ ./runInstaller         

運行roo.sh報錯,可使用如下命令

[root@rac02 ~]# /u01/app/11.2.0/grid/crs/install/rootcrs.pl -deconfig -force         

查看安裝日誌

[root@rac01 /]# cat /u01/app/oraInventory/logs/installActions2019-03-27_04-25-47PM.log         

檢查crs狀態

[grid@rac01 ~]$ crsctl check crs         

檢查Clusterware資源

[grid@rac01 ~]$ crs_stat -t -v

[grid@rac01 ~]$ crsctl stat res -t         

 檢查集羣節點

[grid@rac01 ~]$ olsnodes -n         

檢查兩個節點上的Oracle TNS監聽器進程

[grid@rac01 ~]$ ps -ef|grep lsnr|grep -v 'grep'|grep -v 'ocfs'|awk '{print$9}'         

 確認當前正在運行已安裝的Oracle ASM:

[grid@rac01 ~]$ srvctl status asm -a        ./runcluvfy.sh stage -post hwos -n rac01,rac02 -verbose         

 安裝asm [grid@rac01 ~]$ asmca

4、安裝oracle

[root@rac01 ~]#xhost +

[root@rac01 ~]# su - oracle

[oracle@rac01 ~]$ cd /software/database

[oracle@rac01 database]$ ./runInstaller    

5、檢查安裝後的配置            

檢查集羣運行狀態

[grid@rac01 ~]$srvctl status database -d orc           

檢查本地節點crs狀態

[grid@rac01 ~]$ crsctl check crs          

 檢查集羣crs狀態

[grid@rac01 ~]$ crsctl check cluster           

檢查集羣節點

[grid@rac01 ~]$ olsnodes -n -i -s -t          

檢查集羣間的表決磁盤信息

[grid@rac01 ~]$ crsctl query css votedisk          

 檢查集羣scan ip

[grid@rac01 ~]$ srvctl config scan            

檢查scan 監聽       

[grid@rac01 ~]$  srvctl config scan_listener

6、啓、停集羣數據庫進入grid用戶 

整個集羣的數據庫啓停

[grid@rac01 ~]$ srvctl stop database -d orcl

[grid@rac01 ~]$ srvctl start database -d orcl

進入root用戶 只關閉了當前結點

[root@rac01 bin]# pwd/u01/app/11.2.0/grid/bin

[root@rac01 bin]# ./crsctl stop crs

7、em

[oracle@rac1 ~]$ emctl status dbconsole

[oracle@rac1 ~]$ emctl start dbconsole

[oracle@rac1 ~]$ emctl stop dbconsole
                                                                                                            

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章