阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

vSphere在RedHat6.0上搭建Oracle 11g R2 RAC环境

108次阅读
没有评论

共计 22508 个字符,预计需要花费 57 分钟才能阅读完成。

一、前期准备工作

1.1 为方便操作,装完系统后我们先安装 Vmware Tools:

1.1.1、安装工具

在 VMware 的菜单栏上选择 ” 虚拟机 / 安装虚拟机工具(VM/Install VMware Tools…)”

1.1.2、挂载光盘

# mkdir /mnt/cdrom

# mount /dev/cdrom /mnt/cdrom

1.1.3、进入挂载目录,将压缩文件复制至 /tmp 目录下

# cp VMwareTools-9.4.0-1280544.tar.gz /tmp

1.1.4、解压并安装

#cd /tmp

#tar -xzvf VMwareTools-9.4.0-1280544.tar.gz

#cd vmware-tools-distrib

#./vmware-install.pl

# 安装过程所有问题一律 Enter,安装完成后重启

1.2 设置本地时间:

# 配置 ntpd 服务

[root@rac1 ~]# vim /etc/sysconfig/ntpd

OPTIONS=”-x -u ntp:ntp -p /var/run/ntpd.pid -g”

# 关闭 iptables

[root@rac1 ~]# chkconfig iptables off

[root@rac1 ~]# service iptables stop

iptables: Flushing firewall rules: [OK]

iptables: Setting chains to policy ACCEPT: filter [OK]

iptables: Unloading modules: [OK]

[root@rac1 ~]# rm -rf /etc/localtime

[root@rac1 ~]# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

[root@rac1 ~]# ntpdate time.nist.gov

29 Nov 11:22:03 ntpdate[2689]: the NTP socket is in use, exiting

[root@rac1 ~]# clock -w

[root@rac1 ~]# hwclock –systohc #将系统时间写入硬件时钟

[root@rac1 ~]# hwclock;date

Tue 29 Nov 2016 11:23:06 AM CST -1.052091 seconds

Tue Nov 29 11:23:06 CST 2016

1.3 IP 和 hosts 配置:

1.3.1、需求:

 

IP

主机名

public

192.168.2.206

rac1

  

192.168.2.207

rac2

private

192.168.10.206

rac1-priv

  

192.168.10.207

rac2-priv

vip

192.168.2.208

rac1-vip

  

192.168.2.209

rac2-vip

SCAN

192.168.2.10

rac-cluster

1.3.2、修改 IP 和 host 配置文件:

 

查看 VPN:nmcli con

列举系统中的网络接口:nmcli dev list

参考文档:<http://www.linuxidc.com/Linux/2013-08/88809.htm>

 

[root@rac1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=”eth0″

NM_CONTROLLED=”yes”

ONBOOT=yes

HWADDR=00:0C:29:96:F1:81

TYPE=Ethernet

BOOTPROTO=static

IPADDR=192.168.2.206

NETMASK=255.255.255.0

GATEWAY=192.168.2.1

DNS1=192.168.2.1

NAME=”System eth0″

UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03

 

[root@rac1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=”eth1″

NM_CONTROLLED=”yes”

ONBOOT=yes

HWADDR=00:0C:29:96:F1:8B

TYPE=Ethernet

BOOTPROTO=static

IPADDR=192.168.3.206

NETMASK=255.255.255.0

#GATEWAY=192.168.10.1

DNS1=192.168.10.1

NAME=”System eth1″

UUID=47b8c9f9-98ef-422c-8dca-ca18d5c0c203

 

1.3.3、hosts 配置:

[root@rac1 ~]# vim /etc/hosts

127.0.0.1 localhost.localdomain localhost

::1 localhost6.localdomain6 localhost6

 

#eth0 public ip

192.168.2.206 rac1 rac1.localdomain

192.168.2.207 rac2 rac2.localdomain

 

#eth1 private ip

192.168.10.206 rac1-priv rac1-priv.localdomain

192.168.10.207 rac2-priv rac2-priv.localdomain

 

#virtual ip

192.168.2.208 rac1-vip rac1-vip.localdomain

192.168.2.209 rac2-vip rac2-vip.localdomain

 

#scan ip

 

192.168.2.210 rac-cluster rac-cluster-scan

 

这里存在一个 NetworkManager 的 bug:

Bug 668830 – NetworkManager adds hostname to /etc/hosts pointing to localhost

该问题在 NetworkManager-0.8.1-9.el6.x86_64.rpm 中被解决

 

检查本机 NetworkManager 版本号:

[root@rac1 ~]# rpm -qa|grep Network

NetworkManager-0.8.1-5.el6.x86_64

NetworkManager-gnome-0.8.1-5.el6.x86_64

NetworkManager-glib-0.8.1-5.el6.x86_64

 

在网上下载 0.8.1- 9 版本以上的相关 rpm 离线包并安装:

[root@rac1 home]# rpm -Uvh NetworkManager-0.8.1-107.el6.x86_64.rpm NetworkManager-glib-0.8.1-107.el6.x86_64.rpm NetworkManager-gnome-0.8.1-107.el6.x86_64.rpm –nodeps

 

[root@rac1 home]# rpm -qa|grep Network

NetworkManager-0.8.1-107.el6.x86_64

NetworkManager-glib-0.8.1-107.el6.x86_64

NetworkManager-gnome-0.8.1-107.el6.x86_64

 

[root@rac1 home]# cd —

[root@rac1 ~]# service NetworkManager restart

Stopping NetworkManager daemon: [OK]

Setting network parameters… [OK]

Starting NetworkManager daemon: [OK]

 

[root@rac1 ~]# chkconfig NetworkManager on

[root@rac1 ~]# service network restart

 

1.4 依赖软件包安装:

 

1.4.1、配置本地 yum 源

 

1、删除本地 yum 源

[root@rac1 ~]# # rpm -aq | grep yum|xargs rpm -e –nodeps

2、下载新的 yum 安装包,上传至 /home 目录下

yum-3.2.27-14.el6.noarch.rpm

python-iniparse-0.3.1-2.1.el6.noarch.rpm

yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm

3、安装 yum 软件包

[root@rac1 home]# rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm –force

[root@rac1 home]# rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm –force

[root@rac1 home]# rpm -ivh yum-3.2.27-14.el6.noarch.rpm yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm

–force 即使覆盖属于其它包的文件也强迫安装

–nodeps 如果该 RPM 包的安装依赖其它包,即使其它包没装,也强迫安装。

4、更改 yum 源

[root@rac1 home]# cd /etc/yum.repos.d/

[root@rac1 yum.repos.d]# wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

[root@rac1 yum.repos.d]# vi CentOS6-Base-163.repo

编辑文件,把文件里面的 $releasever 全部替换为版本号,即 6 最后保存!

 

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-6 – Base – 163.com
baseurl=http://mirrors.163.com/centos/6/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#released updates
[updates]
name=CentOS-6 – Updates – 163.com
baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful
[extras]
name=CentOS-6 – Extras – 163.com
baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6 – Plus – 163.com
baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#contrib – packages by Centos Users
[contrib]
name=CentOS-6 – Contrib – 163.com
baseurl=http://mirrors.163.com/centos/6/contrib/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

5、清理 yum 缓存

[root@rac1 yum.repos.d]# yum clean all

[root@rac1 yum.repos.d]# yum makecache

6、安装软件依赖包

[root@rac1 ~]# yum install binutils-2.*

[root@rac1 ~]# yum install compat-libstdc++-33*

[root@rac1 ~]# yum install elfutils-libelf-0.*

[root@rac1 ~]# yum install elfutils-libelf-devel-*

[root@rac1 ~]# yum install libaio-0.*

[root@rac1 ~]# yum install libaio-devel-0.*

[root@rac1 ~]# yum install sysstat-9.*

[root@rac1 ~]# yum install glibc-2.*

[root@rac1 ~]# yum install glibc-common-2.*

[root@rac1 ~]# yum install glibc-devel-2.* glibc-headers-2.*

[root@rac1 ~]# yum install ksh-2* #官方要求安装 pdksh-5* 包,需要手动下载离线包进行安装

[root@rac1 ~]# yum install make-3.*

[root@rac1 ~]# yum install libgcc-4.*

[root@rac1 ~]# yum install libstdc++-4.*

[root@rac1 ~]# yum install libstdc++-4.*.i686*

[root@rac1 ~]# yum install libstdc++-devel-4.*

[root@rac1 ~]# yum install gcc-4.*x86_64*

[root@rac1 ~]# yum install gcc-c++-4.*x86_64*

[root@rac1 ~]# yum install libtool-ltdl*i686*

[root@rac1 ~]# yum install ncurses*i686*

[root@rac1 ~]# yum install readline*i686*

[root@rac1 ~]# yum install unixODBC*

[root@rac1 ~]# yum install libXp

 

1.5 建立用户及组

 

# 组

[root@rac1 ~]# groupadd -g 1300 dba

[root@rac1 ~]# groupadd -g 1301 oper

[root@rac1 ~]# groupadd -g 1000 oinstall

[root@rac1 ~]# groupadd -g 1200 asmadmin

[root@rac1 ~]# groupadd -g 1201 asmdba

[root@rac1 ~]# groupadd -g 1202 asmoper

# 用户

[root@rac1 ~]# useradd -m -u 1100 -g oinstall -G asmadmin,asmdba,asmoper,dba -s /bin/bash grid

[root@rac1 ~]# useradd -m -u 1101 -g oinstall -G dba,oper,asmdba -s /bin/bash Oracle

# 设置密码

[root@rac1 ~]# passwd oracle

Changing password for user oracle.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

[root@rac1 ~]# passwd grid

Changing password for user grid.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

 

1.6 创建 grid 和 oracle 用户目录结构

 

# 这个目录存放 oracle 安装或升级信息

[root@rac1 ~]# mkdir -p /u01/app/oraInventory

[root@rac1 ~]# chown -R grid:oinstall /u01/app/oraInventory

[root@rac1 ~]# chmod -R 775 /u01/app/oraInventory

 

# 这个目录存放 asm 实例信息

[root@rac1 ~]# mkdir -p /u01/app/grid

[root@rac1 ~]# chmod -R 775 /u01/app/grid

[root@rac1 ~]# chown -R grid:oinstall /u01/app/grid

 

# 这个目录主要存放 grid 软件信息

[root@rac1 ~]# mkdir -p /u01/app/11.2.0/grid

[root@rac1 ~]# chown -R grid:oinstall /u01/app/11.2.0/grid

[root@rac1 ~]# chmod -R 775 /u01/app/11.2.0/grid

 

#oracle 用户目录

[root@rac1 ~]# mkdir -p /u01/app/oracle

[root@rac1 ~]# mkdir -p /u01/app/oracle/cfgtoollogs

[root@rac1 ~]# chown -R oracle:oinstall /u01/app/oracle

[root@rac1 ~]# chmod -R 775 /u01/app/oracle

[root@rac1 ~]# mkdir -p /u01/app/oracle/product/11.2.0/db_1

[root@rac1 ~]# chown -R oracle:oinstall /u01/app/oracle/product/11.2.0/db_1

[root@rac1 ~]# chmod -R 775 /u01/app/oracle/product/11.2.0/db_1

 

1.7 修改系统参数

[root@rac1 ~]# vi /etc/security/limits.conf

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

grid soft nproc 2047

grid hard nproc 16384

grid soft nofile 1024

grid hard nofile 65536

[root@rac1 ~]# vi /etc/pam.d/login

session required pam_limits.so

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

fs.aio-max-nr = 1048576

fs.file-max = 6815744

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 = 1048576

kernel.shmall = 2097152

kernel.shmmax = 4294967295

[root@rac1 ~]# sysctl -p

 

1.8 用户环境变量设置

 

#grid 用户

[root@rac1 ~]# su – grid

[grid@rac1 ~]$ vim /home/grid/.bash_profile

export ORACLE_BASE=/u01/app/grid

export ORACLE_HOME=/u01/app/11.2.0/grid

export PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_SID=+ASM1

[grid@rac1 ~]$ source /home/grid/.bash_profile

 

#oracle 用户

[grid@rac1 ~]$ su – oracle

Password:

[oracle@rac1 ~]$ vim /home/oracle/.bash_profile

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_SID=rac1

[oracle@rac1 ~]$ source /home/oracle/.bash_profile

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-03/141540p2.htm

二、单节点环境扩展

2.1、建立节点2 rac2

关闭虚拟机 rac1,复制并命名为rac2。修改节点2IP地址和 hosts 文件,主要参考 /etc/udev/rules.d/70-persistent-net.rules 文件,根据此文件内容,如下图:

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

删除从节点 1 复制过来的网卡信息,修改 eth2eth3eth0eth1

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

根据前面的 ip 需求,配置节点 2IPhosts 文件,修改

/etc/sysconfig/network-scripts/ifcfg-eth0

/etc/sysconfig/network-scripts/ifcfg-eth1

/etc/sysconfig/network

/etc/hosts

修改 Oraclegrid用户的 .bash_profile 文件

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

2.3 添加 ASM 共享磁盘 – 通过 udev 创建 ASM DISK  http://www.linuxidc.com/Linux/2017-03/141541.htm

2.4、将安装包上传至节点 1 中并解压

[root@rac1 tmp]# unzip p13390677_112040_Linux-x86-64_1of7.zip

[root@rac1 tmp]# unzip p13390677_112040_Linux-x86-64_2of7.zip

[root@rac1 tmp]# unzip p13390677_112040_Linux-x86-64_3of7.zip

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

三、Grid安装

3.1、以 grid 用户去执行解压文件中 grid 目录下的 runInstaller 文件

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

3.2、图形界面安装配置

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

忽略软件更新

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

对整个集群安装和配置 Grid 结构

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择自定义安装

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

默认英文

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

Cluster Name可自定义,SCAN Name需与 hosts 配置文件中 Scan IP 的主机名一致

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

点击 Add 添加节点信息,选择 setup 建立 SSH 互信,点击 Test 测试互信

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择对应网卡接口

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择 ASM 存储

一、前期准备工作

1.1 为方便操作,装完系统后我们先安装 Vmware Tools:

1.1.1、安装工具

在 VMware 的菜单栏上选择 ” 虚拟机 / 安装虚拟机工具(VM/Install VMware Tools…)”

1.1.2、挂载光盘

# mkdir /mnt/cdrom

# mount /dev/cdrom /mnt/cdrom

1.1.3、进入挂载目录,将压缩文件复制至 /tmp 目录下

# cp VMwareTools-9.4.0-1280544.tar.gz /tmp

1.1.4、解压并安装

#cd /tmp

#tar -xzvf VMwareTools-9.4.0-1280544.tar.gz

#cd vmware-tools-distrib

#./vmware-install.pl

# 安装过程所有问题一律 Enter,安装完成后重启

1.2 设置本地时间:

# 配置 ntpd 服务

[root@rac1 ~]# vim /etc/sysconfig/ntpd

OPTIONS=”-x -u ntp:ntp -p /var/run/ntpd.pid -g”

# 关闭 iptables

[root@rac1 ~]# chkconfig iptables off

[root@rac1 ~]# service iptables stop

iptables: Flushing firewall rules: [OK]

iptables: Setting chains to policy ACCEPT: filter [OK]

iptables: Unloading modules: [OK]

[root@rac1 ~]# rm -rf /etc/localtime

[root@rac1 ~]# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

[root@rac1 ~]# ntpdate time.nist.gov

29 Nov 11:22:03 ntpdate[2689]: the NTP socket is in use, exiting

[root@rac1 ~]# clock -w

[root@rac1 ~]# hwclock –systohc #将系统时间写入硬件时钟

[root@rac1 ~]# hwclock;date

Tue 29 Nov 2016 11:23:06 AM CST -1.052091 seconds

Tue Nov 29 11:23:06 CST 2016

1.3 IP 和 hosts 配置:

1.3.1、需求:

 

IP

主机名

public

192.168.2.206

rac1

  

192.168.2.207

rac2

private

192.168.10.206

rac1-priv

  

192.168.10.207

rac2-priv

vip

192.168.2.208

rac1-vip

  

192.168.2.209

rac2-vip

SCAN

192.168.2.10

rac-cluster

1.3.2、修改 IP 和 host 配置文件:

 

查看 VPN:nmcli con

列举系统中的网络接口:nmcli dev list

参考文档:<http://www.linuxidc.com/Linux/2013-08/88809.htm>

 

[root@rac1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=”eth0″

NM_CONTROLLED=”yes”

ONBOOT=yes

HWADDR=00:0C:29:96:F1:81

TYPE=Ethernet

BOOTPROTO=static

IPADDR=192.168.2.206

NETMASK=255.255.255.0

GATEWAY=192.168.2.1

DNS1=192.168.2.1

NAME=”System eth0″

UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03

 

[root@rac1 ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=”eth1″

NM_CONTROLLED=”yes”

ONBOOT=yes

HWADDR=00:0C:29:96:F1:8B

TYPE=Ethernet

BOOTPROTO=static

IPADDR=192.168.3.206

NETMASK=255.255.255.0

#GATEWAY=192.168.10.1

DNS1=192.168.10.1

NAME=”System eth1″

UUID=47b8c9f9-98ef-422c-8dca-ca18d5c0c203

 

1.3.3、hosts 配置:

[root@rac1 ~]# vim /etc/hosts

127.0.0.1 localhost.localdomain localhost

::1 localhost6.localdomain6 localhost6

 

#eth0 public ip

192.168.2.206 rac1 rac1.localdomain

192.168.2.207 rac2 rac2.localdomain

 

#eth1 private ip

192.168.10.206 rac1-priv rac1-priv.localdomain

192.168.10.207 rac2-priv rac2-priv.localdomain

 

#virtual ip

192.168.2.208 rac1-vip rac1-vip.localdomain

192.168.2.209 rac2-vip rac2-vip.localdomain

 

#scan ip

 

192.168.2.210 rac-cluster rac-cluster-scan

 

这里存在一个 NetworkManager 的 bug:

Bug 668830 – NetworkManager adds hostname to /etc/hosts pointing to localhost

该问题在 NetworkManager-0.8.1-9.el6.x86_64.rpm 中被解决

 

检查本机 NetworkManager 版本号:

[root@rac1 ~]# rpm -qa|grep Network

NetworkManager-0.8.1-5.el6.x86_64

NetworkManager-gnome-0.8.1-5.el6.x86_64

NetworkManager-glib-0.8.1-5.el6.x86_64

 

在网上下载 0.8.1- 9 版本以上的相关 rpm 离线包并安装:

[root@rac1 home]# rpm -Uvh NetworkManager-0.8.1-107.el6.x86_64.rpm NetworkManager-glib-0.8.1-107.el6.x86_64.rpm NetworkManager-gnome-0.8.1-107.el6.x86_64.rpm –nodeps

 

[root@rac1 home]# rpm -qa|grep Network

NetworkManager-0.8.1-107.el6.x86_64

NetworkManager-glib-0.8.1-107.el6.x86_64

NetworkManager-gnome-0.8.1-107.el6.x86_64

 

[root@rac1 home]# cd —

[root@rac1 ~]# service NetworkManager restart

Stopping NetworkManager daemon: [OK]

Setting network parameters… [OK]

Starting NetworkManager daemon: [OK]

 

[root@rac1 ~]# chkconfig NetworkManager on

[root@rac1 ~]# service network restart

 

1.4 依赖软件包安装:

 

1.4.1、配置本地 yum 源

 

1、删除本地 yum 源

[root@rac1 ~]# # rpm -aq | grep yum|xargs rpm -e –nodeps

2、下载新的 yum 安装包,上传至 /home 目录下

yum-3.2.27-14.el6.noarch.rpm

python-iniparse-0.3.1-2.1.el6.noarch.rpm

yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm

3、安装 yum 软件包

[root@rac1 home]# rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm –force

[root@rac1 home]# rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm –force

[root@rac1 home]# rpm -ivh yum-3.2.27-14.el6.noarch.rpm yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm

–force 即使覆盖属于其它包的文件也强迫安装

–nodeps 如果该 RPM 包的安装依赖其它包,即使其它包没装,也强迫安装。

4、更改 yum 源

[root@rac1 home]# cd /etc/yum.repos.d/

[root@rac1 yum.repos.d]# wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

[root@rac1 yum.repos.d]# vi CentOS6-Base-163.repo

编辑文件,把文件里面的 $releasever 全部替换为版本号,即 6 最后保存!

 

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-6 – Base – 163.com
baseurl=http://mirrors.163.com/centos/6/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#released updates
[updates]
name=CentOS-6 – Updates – 163.com
baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#additional packages that may be useful
[extras]
name=CentOS-6 – Extras – 163.com
baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6 – Plus – 163.com
baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

#contrib – packages by Centos Users
[contrib]
name=CentOS-6 – Contrib – 163.com
baseurl=http://mirrors.163.com/centos/6/contrib/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

5、清理 yum 缓存

[root@rac1 yum.repos.d]# yum clean all

[root@rac1 yum.repos.d]# yum makecache

6、安装软件依赖包

[root@rac1 ~]# yum install binutils-2.*

[root@rac1 ~]# yum install compat-libstdc++-33*

[root@rac1 ~]# yum install elfutils-libelf-0.*

[root@rac1 ~]# yum install elfutils-libelf-devel-*

[root@rac1 ~]# yum install libaio-0.*

[root@rac1 ~]# yum install libaio-devel-0.*

[root@rac1 ~]# yum install sysstat-9.*

[root@rac1 ~]# yum install glibc-2.*

[root@rac1 ~]# yum install glibc-common-2.*

[root@rac1 ~]# yum install glibc-devel-2.* glibc-headers-2.*

[root@rac1 ~]# yum install ksh-2* #官方要求安装 pdksh-5* 包,需要手动下载离线包进行安装

[root@rac1 ~]# yum install make-3.*

[root@rac1 ~]# yum install libgcc-4.*

[root@rac1 ~]# yum install libstdc++-4.*

[root@rac1 ~]# yum install libstdc++-4.*.i686*

[root@rac1 ~]# yum install libstdc++-devel-4.*

[root@rac1 ~]# yum install gcc-4.*x86_64*

[root@rac1 ~]# yum install gcc-c++-4.*x86_64*

[root@rac1 ~]# yum install libtool-ltdl*i686*

[root@rac1 ~]# yum install ncurses*i686*

[root@rac1 ~]# yum install readline*i686*

[root@rac1 ~]# yum install unixODBC*

[root@rac1 ~]# yum install libXp

 

1.5 建立用户及组

 

# 组

[root@rac1 ~]# groupadd -g 1300 dba

[root@rac1 ~]# groupadd -g 1301 oper

[root@rac1 ~]# groupadd -g 1000 oinstall

[root@rac1 ~]# groupadd -g 1200 asmadmin

[root@rac1 ~]# groupadd -g 1201 asmdba

[root@rac1 ~]# groupadd -g 1202 asmoper

# 用户

[root@rac1 ~]# useradd -m -u 1100 -g oinstall -G asmadmin,asmdba,asmoper,dba -s /bin/bash grid

[root@rac1 ~]# useradd -m -u 1101 -g oinstall -G dba,oper,asmdba -s /bin/bash Oracle

# 设置密码

[root@rac1 ~]# passwd oracle

Changing password for user oracle.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

[root@rac1 ~]# passwd grid

Changing password for user grid.

New password:

Retype new password:

passwd: all authentication tokens updated successfully.

 

1.6 创建 grid 和 oracle 用户目录结构

 

# 这个目录存放 oracle 安装或升级信息

[root@rac1 ~]# mkdir -p /u01/app/oraInventory

[root@rac1 ~]# chown -R grid:oinstall /u01/app/oraInventory

[root@rac1 ~]# chmod -R 775 /u01/app/oraInventory

 

# 这个目录存放 asm 实例信息

[root@rac1 ~]# mkdir -p /u01/app/grid

[root@rac1 ~]# chmod -R 775 /u01/app/grid

[root@rac1 ~]# chown -R grid:oinstall /u01/app/grid

 

# 这个目录主要存放 grid 软件信息

[root@rac1 ~]# mkdir -p /u01/app/11.2.0/grid

[root@rac1 ~]# chown -R grid:oinstall /u01/app/11.2.0/grid

[root@rac1 ~]# chmod -R 775 /u01/app/11.2.0/grid

 

#oracle 用户目录

[root@rac1 ~]# mkdir -p /u01/app/oracle

[root@rac1 ~]# mkdir -p /u01/app/oracle/cfgtoollogs

[root@rac1 ~]# chown -R oracle:oinstall /u01/app/oracle

[root@rac1 ~]# chmod -R 775 /u01/app/oracle

[root@rac1 ~]# mkdir -p /u01/app/oracle/product/11.2.0/db_1

[root@rac1 ~]# chown -R oracle:oinstall /u01/app/oracle/product/11.2.0/db_1

[root@rac1 ~]# chmod -R 775 /u01/app/oracle/product/11.2.0/db_1

 

1.7 修改系统参数

[root@rac1 ~]# vi /etc/security/limits.conf

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

grid soft nproc 2047

grid hard nproc 16384

grid soft nofile 1024

grid hard nofile 65536

[root@rac1 ~]# vi /etc/pam.d/login

session required pam_limits.so

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

fs.aio-max-nr = 1048576

fs.file-max = 6815744

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 = 1048576

kernel.shmall = 2097152

kernel.shmmax = 4294967295

[root@rac1 ~]# sysctl -p

 

1.8 用户环境变量设置

 

#grid 用户

[root@rac1 ~]# su – grid

[grid@rac1 ~]$ vim /home/grid/.bash_profile

export ORACLE_BASE=/u01/app/grid

export ORACLE_HOME=/u01/app/11.2.0/grid

export PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_SID=+ASM1

[grid@rac1 ~]$ source /home/grid/.bash_profile

 

#oracle 用户

[grid@rac1 ~]$ su – oracle

Password:

[oracle@rac1 ~]$ vim /home/oracle/.bash_profile

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_SID=rac1

[oracle@rac1 ~]$ source /home/oracle/.bash_profile

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-03/141540p2.htm

输入 asm 磁盘路径

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择常规冗余

#如果之前安装过,重装时会无法选取磁盘,这时可执行以下命令:

[root@rac1 ~]# dd if=/dev/zero of=/dev/asm_disk1 count=512

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

设置 ASM 管理密码,选择Yes

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择不配置IPM

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择相对应正确的组

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择安装目录,要与之前设置的环境变量一致

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

检查安装先决条件,根据警告信息逐个排查解决

据说 kshpdksh功能相同,这里为了保险还是替换成 pdksh

pdkshCenOs yum 源中没有,下载离线包并上传,在两个节点上直接安装

[root@rac1 rpm]# scp /home/pdksh-5.2.14-37.el5_8.1.x86_64.rpm grid@rac2:/tmp/

grid@rac2’s password:

pdksh-5.2.14-37.el5_8.1.x86_64.rpm 100% 206KB 205.9KB/s 00:00

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

cvuqdisk-1.0.9-1.rpm这个包在解压好的 grid 目录下,找到并安装即可

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

删除 ntp 配置文件

[root@rac1 ~]# rm -rf /etc/ntp

[root@rac1 ~]# rm -rf /etc/ntp.conf

[root@rac2 ~]# rm -rf /etc/ntp

[root@rac2 ~]# rm -rf /etc/ntp.conf

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

忽略这个问题

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

root 身份依次在两个节点上执行脚本

[root@rac1 ~]# /u01/app/oraInventory/orainstRoot.sh

[root@rac2 ~]# /u01/app/oraInventory/orainstRoot.sh

[root@rac1 ~]# /u01/app/11.2.0/grid/root.sh

报错提示信息:

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

这是因为库版本的原因:

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

解决办法就是建立软连接(/lib64 目录中执行):

[root@rac1 lib64]# ln -s libcap.so.2.16 libcap.so.1

[root@rac2 lib64]# ln -s libcap.so.2.16 libcap.so.1

再次在节点 1 中执行 /u01/app/11.2.0/grid/root.sh

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

脚本成功执行完成后在节点 2 中执行 /u01/app/11.2.0/grid/root.sh

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

   

以上四个脚本依次执行成功后,回到图形安装界面,点击窗口上的 OkGrid 继续进行安装;

这里出现一个错误信息:

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

参考这篇文档:http://www.linuxidc.com/Linux/2017-03/141542.htm

忽略这个问题    

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

完成 Grid 安装

四、 Oracle数据库安装

4.1 在节点 1 上使用 oracle 用户,在解压后的文件中找到 database 目录下的 runInstaller 文件并执行

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

   

4.2 图形界面安装配置

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

忽略软件更新

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择仅安装 Oracle 数据库,数据库实例后面再单独安装

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择 Oracle 集群数据库的安装;Setup建立互信,Test检测互信

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

默认英文版

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择企业版

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择安装目录,要与之前设置的用户环境变量一致

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

没有 DNS 服务器的情况下,忽略这个问题

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

开始安装

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

在节点 1 上以 root 身份执行 [root@rac1 lib64]# /u01/app/oracle/product/11.2.0/db_1/root.sh

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

在节点 2 上以 root 身份执行[root@rac2 lib64]# /u01/app/oracle/product/11.2.0/db_1/root.sh

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

完成后回到图形安装界面,点击窗口上的Ok,继续执行安装

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

完成安装

五、 安装 Oracle 数据库实例

oracle 用户执行 dbca 命令,开始创建 Oracle 数据库实例

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择RAC database

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择创建数据库实例

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择常规模板

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

填写数据库名并选择在所有节点上安装

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

填写数据库管理密码,选择 Yes 继续

这里需要重新创建一个磁盘组来存放数据库相关数据文件和其他共享文件;

在节点 1 上,另开一个终端,以 grid 用户执行 asmca 命令,弹出下面窗口:

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

点击 Create 创建新的磁盘组

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

输入磁盘组名,选择常规冗余,勾选磁盘,点击 OK 开始创建

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

创建成功,点击 OK 回到主界面

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

点击右下角 Exit, 选择 Yes 退出这个界面,回到 dbca 界面,选择刚才创建的磁盘组

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

点击 Next, 并选择开启归档

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

由于是测试环境,选择安装较少的组件

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

选择utf-8

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

点击Next,继续下一步安装

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

可以选择性的勾选是否生成数据库创建脚本,点击Finish

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

点击OK

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

等待安装,这个过程会有几十分钟

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

至此,RAC环境搭建完成

六、 检查 RAC 环境组件是否正常工作

6.1 检查 crs 是否正常工作

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

使用命令 crsctl check crs

6.2 检查其他组件是否正常工作

使用命令 crsctl stat res -t

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

6.3 查看监听状态

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

#可编辑 TNS 文件,cd /u01/app/Oracle/product/11.2.0/db_1/network/admin/

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

6.4 查看 CTSS 时间同步服务状态

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

6.5 检查 Oracle 集群注册表(OCR

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

6.6 检查表决磁盘

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

vSphere 在 RedHat6.0 上搭建 Oracle 11g R2 RAC 环境

6.7 11g R2 RAC 启动关闭步骤

1. 关闭监听

/u01/app/11.2.0/grid/bin/srvctl stop listener -n RedHat-rac01

/u01/app/11.2.0/grid/bin/srvctl stop listener -n redhat-rac02

查看某个节点的监听状态

/u01/app/11.2.0/grid/bin/srvctl status listener -n redhat-rac01

/u01/app/11.2.0/grid/bin/srvctl status listener -n redhat-rac02

2. 关闭实例

/u01/app/11.2.0/grid/bin/srvctl stop database -d redtest

查看所有节点上实例运行状态

/u01/app/11.2.0/grid/bin/srvctl status database -d redtest

3. 关闭 asm(可以忽略不执行)

/u01/app/11.2.0/grid/bin/srvctl stop asm -n redhat-rac01

/u01/app/11.2.0/grid/bin/srvctl stop asm -n redhat-rac02

注: 如果仅仅使用上面的命令去关闭 asm 可能会报错

/u01/app/11.2.0/grid/bin/srvctl stop diskgroup -g DATA_GROUP

/u01/app/11.2.0/grid/bin/srvctl stop diskgroup -g OCR_VOTE

查看每个节点上 asm 的运行状态

/u01/app/11.2.0/grid/bin/srvctl status asm -n redhat-rac01

/u01/app/11.2.0/grid/bin/srvctl status asm -n redhat-rac02

4. 关闭 crs

每个节点上都要执行

/u01/app/11.2.0/grid/bin/crsctl stop crs

启动:

1. 启动集群服务

crsctl start crs (must be run on each node)

注: 也可以使用命令 crsctl start cluster -n redhat-rac01redhat-rac02( 所有)

2. 启动实例

/u01/app/11.2.0/grid/bin/srvctl start database -d redtest

更多 Oracle 相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/141540.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-22发表,共计22508字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中