OEL7.2下Oracle11.2.0.4RAC部署

一、 安装步骤简述

u OEL7.2操作系统安装

u RAC 安装环境配置

u ORACLE CRS安装

u ORACLE DB软件安装

u ORACLE实例安装

u 环境检查

二、 OEL7.2操作系统安装

1 插入OEL7.2操作系统安装光盘或加载ISO文件

2 引导安装光盘,回车后开始安装

3 选择操作系统语言--continue    

4 时区选择亚洲—上海--DONE    

5 语言支持选择—english 和 简体中文    

6 安全策略--off    

7 Software selection—server with gui    

8 选择安装磁盘    

9 网络与主机名配置    

   
   
   
   

10 开始安装    

11 完成操作系统安装后登录    

三、 RAC安装环境配置

1 添加用户、组及配置权限

groupadd oinstall    

groupadd dba    
groupadd oper    
groupadd asmadmin    
groupadd asmdba    
groupadd asmoper    
useradd -g oinstall -G dba,asmdba,asmadmin,asmoper grid    
useradd -g oinstall -G dba,oper,asmdba oracle

usermod -g oinstall -G dba,oper,asmdba oracle    

passwd grid

Passwd oracle

Id oracle    

id grid    
mkdir -p /u01/app/11.2.0/grid

mkdir -p /u01/app/grid    

chown -R grid:oinstall /u01/

mkdir -p /u01/app/oracle    

chown -R oracle:oinstall /u01/app/oracle

chmod -R 775 /u01/

2 修改操作系统环境变量:

oracle用户

vi .bash_profile

export ORACLE_BASE=/u01/app/oracle

export ORACLE_CRS_HOME=/u01/app/grid

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

export ORACLE_SID=orcl1

export ORACLE_TERM=xterm

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

export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

grid用户

export ORACLE_SID=+ASM1

export ORACLE_BASE=/u01/app/grid

export ORACLE_HOME=/u01/app/11.2.0/grid

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"

export PATH=$ORACLE_HOME/bin:$PATH

3 复制安装文件至服务器

Mkdir /mnt/cdrom

Mount –o username=administrator,password=123 //1.1.1.1/iso /mnt/cdrom

复制文件至服务器/u01目录下进行解压

4 安装cvuqdisk

[root@his1 rpm]# rpm -ivh cvuqdisk-1.0.9-1.rpm

Preparing... ################################# [100%]

Using default group oinstall to install package

Updating / installing...

1:cvuqdisk-1.0.9-1 ################################# [100%]

5 安装软件包查询

rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n' binutils \

elfutils-libelf \

elfutils-libelf-devel \

gcc \

gcc-c++ \

glibc \

glibc-common \

glibc-devel \

glibc-headers \

ksh \

libaio \

libaio-devel \

libgcc \

libstdc++ \

libstdc++-devel \

make \

sysstat \

unixODBC \

unixODBC-devel

6 安装缺失安装包    

rpm -ivh elfutils-libelf-devel-0.163-3.el7.x86_64.rpm

rpm -ivh libaio-devel-0.3.109-13.el7.x86_64.rpm

rpm -ivh unixODBC-2.3.1-11.el7.x86_64.rpm

rpm -ivh unixODBC-devel-2.3.1-11.el7.x86_64.rpm

rpm -ivh ksh-20120801-22.el7_1.2.x86_64.rpm

7 防火墙配置:

关闭firewall:    

systemctl stop firewalld.service #停止firewall    
systemctl disable firewalld.service #禁止firewall开机启动    
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)

8 Selinux配置

修改/etc/sysconfig/selinux确保SELINUX=disabled,然后执行setenforce 0或者reboot服务器以生效最小配置,

将SElinux设置为PERMISSIVE模式:

setenforce 0

getenforce

9 Hosts文件配置

172.16.0.107 rac1

172.16.0.108 rac2

1.1.1.1 rac1-priv

1.1.1.2 rac2-priv

172.16.0.109 rac1-vip

172.16.0.110 rac2-vip

172.16.0.111 rac-scan

10 修改/etc/sysctl.conf文件

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152 

kernel.shmmax = 4294967295

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 

For 64-bit systems with 64GB of RAM:    
  kernel.shmmax=34359738368    
  kernel.shmmni=4096    
  kernel.shmall=16777216    
  vm.nr_hugepages=16384

sysctl –p

11 修改removeIPC参数

为了避免linux7.2的新特性,在一个user完全退出OS后会remove掉所有的IPC对象,需要修改如下参数

1).设置/etc/systemd/logind.conf中(OEL默认值)

RemoveIPC=no

2).重启服务器或者重启systemd-logind

systemctl daemon-reload 

systemctl restart systemd-logind

12 配置文件系统描述符 /etc/security/limits.conf

grid soft nproc 2047

grid hard nproc 16384

grid soft nofile 1024

grid hard nofile 65536

grid soft stack 10240

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

13 配置/etc/profile,添加

if [ $USER = "oracle" ] || [ $USER = "grid" ];then

if [ $SHELL = "/bin/ksh" ];then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

umask 022

fi    

export PATH=$PATH:/u01/app/11.2.0/grid/bin

14 Vmware workstation添加虚拟磁盘

OCR 1G DATA 20G    

先添加HIS1节点的磁盘,再至HIS2添加已经存在的磁盘,预先分配好磁盘空间

15 选择磁盘通道:

Ocr选择1:0通道,data选择1:1通道

16 修改HIS1与HIS2的vmx文件,增加以下内容:    

disk.locking="FALSE"

disk.EnableUUID="TRUE"

diskLib.dataCacheMaxSize="0"

diskLib.dataCacheMaxReadAheadSize="0"

diskLib.dataCacheMinReadAheadSize="0"

diskLib.dataCachePageSize="4096"

diskLib.maxUnsyncedWrites="0"

scsi1:0.sharedBus="VIRTUAL"

scsi1:0.virtualDev="lsilogic"

scsi1:0.deviceType="disk"

scsi1:1.sharedBus="VIRTUAL"

scsi1:1.virtualDev="lsilogic"

scsi1:1.deviceType="disk"

scsi1:2.sharedBus="VIRTUAL"

scsi1:2.virtualDev="lsilogic"

scsi1:2.deviceType="disk"

17 对新添加磁盘进行初始化

HIS1初始化后重启HIS2节点即可,不需要再对HIS2上磁盘进行初始化。

进行初始化操作:

   

18 磁盘配置

测试环境清理之前数据

dd if=/dev/zero of=/dev/sdb1

dd if=/dev/zero of=/dev/sdc1

dd if=/dev/zero of=/dev/sdd1

a. 获取需要绑定为asm磁盘的uuid,检查两台服务器上id是否一致

多路径下获取磁盘id

/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/emcpowerb

/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/emcpowerc

/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/emcpowerd

b. 绑写udev.rules文件

vi /etc/udev/rules.d/99-oracle-asmdevices.rules  

常规磁盘配置:

KERNEL=="sd?", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36006016002e045002988e0598f38600b", SYMLINK+="asm/asm-ocr", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sd?", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36006016002e04500d187e059be4b8d61", SYMLINK+="asm/asm-data", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="sd?", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36006016002e045008387e059821bbb14", SYMLINK+="asm/asm-fra", OWNER="grid", GROUP="asmadmin", MODE="0660"

EMC多路径磁盘配置:

KERNEL=="emcpower?", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36006016002e045002988e0598f38600b", SYMLINK+="asm-ocr", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="emcpower?", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36006016002e04500d187e059be4b8d61", SYMLINK+="asm-fra", OWNER="grid", GROUP="asmadmin", MODE="0660"

KERNEL=="emcpower?", SUBSYSTEM=="block", PROGRAM=="/usr/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/$name", RESULT=="36006016002e045008387e059821bbb14", SYMLINK+="asm-data", OWNER="grid", GROUP="asmadmin", MODE="0660"

c. 查看绑定是否成功

udevadm test /sys/block/emcpowerb

udevadm info --query=all --path=/sys/block/emcpowerb

udevadm info --query=all --name=asm-ocr    

udevadm test /sys/block/emcpowerc

udevadm info --query=all --path=/sys/block/emcpowerc

udevadm info --query=all --name=asm-fra

udevadm test /sys/block/emcpowerd

udevadm info --query=all --path=/sys/block/emcpowerd

udevadm info --query=all --name=asm-data

d. 重启udev服务

udevadm control --reload-rules

e. 检查设备绑定情况

ll /dev/asm*

f. 修改asm磁盘权限

chown -h grid:asmadmin /dev/asm/*

四、 安装Oracle CRS

1 使用grid用户执行安装包

./runInstaller

2 跳过软件更新

3 安装和配置群集grid

4 语言选择

5 群集节点及ssh配置—选择setup

6 完成安装

7 执行相关脚本

配置ohas服务:

在执行root.sh脚本之前,添加ohas服务:

a) cd /etc/systemd/system/

touch ohas.service

b) 编辑文件ohas.service 加入以下文本

[Unit]

Description=Oracle High Availability Services

After=syslog.target

[Service]

ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple

Restart=always

[Install]

WantedBy=multi-user.target

c) 运行以下命令(as root):

systemctl daemon-reload

systemctl enable ohas.service

systemctl start ohas.service

d) 运行root.sh

在执行下root.sh脚本后,出现以下提示信息时请启动ohas服务:

Installing Trace File Analyzer

OLR initialization - successful

启动ohas服务

查询安装程序是否已建立/etc/init.d/init.ohasd文件如果已建立则运行ohas服务

systemctl start ohas.service

节点2执行root.sh

当显示:Adding Clusterware entries to inittab

启动ohas服务

查询安装程序是否已建立/etc/init.d/init.ohasd文件如果已建立则运行ohas服务

systemctl start ohas.service

8 完成后检查服务状态

五、 安装数据库软件

1 创建相关asm磁盘组

2 Oracle用户运行.runInstall    

3 选择只安装数据库软件

4 选择在两个服务器上安装实例

5 配置oracle用户等效性

6 选择安装语言

7 安装企业版

8 忽略部分检查错误

9 安装过程中报错

To fix this error edit $ORACLE_HOME/sysman/lib/ins_emagent.mk, search for the line

$(MK_EMAGENT_NMECTL)

and replace the line with

$(MK_EMAGENT_NMECTL) -lnnz11

then click “Retry” button

六、 创建数据库实例

1 Oracle用户执行dbca,创建数据库实例

2 输入创建实例名

3 配置Em

4 配置用户密码

5 选择oms及数据文件存放磁盘组

6 配置归档及闪回区

7 内存配置

8 报错,提未/dev/shm空间太小

在his与his2上执行      

sudo mount -o size=3168M -o remount /dev/shm

9 并发数配置

10 配置字符集

11 开始安装数据库

12 完成数据库安装

七、 安装环境检查

1 检查集群服务启动情况

2 检查监听状态

3 使用不同的ip连接数据库,验证登录是否正常,安装结束。