RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境

LuoXinLoves 2020-01-09

实验环境准备
虚拟机:VMware® Workstation 14 Pro
操作系统:Red Hat Enterprise Linux 6.6 x86_64
rhel-server-6.6-x86_64-dvd.iso
oracle软件:oracle 11.2.0.4
p13390677_112040_Linux-x86-64_1of7.zip
p13390677_112040_Linux-x86-64_2of7.zip
p13390677_112040_Linux-x86-64_3of7.zip

虚拟服务器配置
cpu:1核心
内存:2G
硬盘:30G
共享磁盘:2G*3 + 5G + 6G
网卡*3

操作系统安装
分区:(实验环境以最小化原则进行安装,实际生产环境需要根据需求进行合理规划)
/boot    200M
swap    3200M
/        剩余所有空间
软件包:
选择Desktop
时区:
选择shanghai

创建共享磁盘

vmware-vdiskmanager.exe -c -s 2g -a lsilogic -t 2 "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR1.vmdk"
vmware-vdiskmanager.exe -c -s 2g -a lsilogic -t 2 "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR2.vmdk"
vmware-vdiskmanager.exe -c -s 2g -a lsilogic -t 2 "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR3.vmdk"
vmware-vdiskmanager.exe -c -s 5g -a lsilogic -t 2 "D:\vmware\sharedisk\Shared_Virtual_Disk_FRA.vmdk"
vmware-vdiskmanager.exe -c -s 6g -a lsilogic -t 2 "D:\vmware\sharedisk\Shared_Virtual_Disk_DATA.vmdk"

 虚拟机关机后,在srac1.vmx/srac2.vmx文件最后追加以下内容

#shared disks configure
disk.EnableUUID="TRUE"
disk.locking = "FALSE"
scsi1.shared = "TRUE"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize= "4096"
diskLib.maxUnsyncedWrites = "0"

scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"
scsil.sharedBus = "VIRTUAL"

scsi1:0.present = "TRUE"
scsi1:0.mode = "independent-persistent"
scsi1:0.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR1.vmdk"
scsi1:0.deviceType = "disk"
scsi1:0.redo = ""

scsi1:1.present = "TRUE"
scsi1:1.mode = "independent-persistent"
scsi1:1.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR2.vmdk"
scsi1:1.deviceType = "disk"
scsi1:1.redo = ""

scsi1:2.present = "TRUE"
scsi1:2.mode = "independent-persistent"
scsi1:2.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR3.vmdk"
scsi1:2.deviceType = "disk"
scsi1:2.redo = ""

scsi1:3.present = "TRUE"
scsi1:3.mode = "independent-persistent"
scsi1:3.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_FRA.vmdk"
scsi1:3.deviceType = "disk"
scsi1:3.redo = ""

scsi1:4.present = "TRUE"
scsi1:4.mode = "independent-persistent"
scsi1:4.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_DATA.vmdk"
scsi1:4.deviceType = "disk"
scsi1:4.redo = ""

IP规划

hostname

IP

Public Network

srac1

92.0.2.101

srac2

92.0.2.102

Virtual IP (VIP)

srac1

92.0.2.103

srac2

92.0.2.104

Private Interconnect

srac1

192.168.0.101

srac2

192.168.0.102

SCAN IP

srac1/srac2

92.0.2.105




hosts规划
##Public Network
92.0.2.101     srac1.example.com      srac1
92.0.2.102     srac2.example.com      srac2

##Public Virtual IP (VIP) addresses
92.0.2.103     srac1-vip.example.com  srac1-vip
92.0.2.104     srac2-vip.example.com  srac2-vip

##Private Interconnect
192.168.0.101   srac1-priv.example.com srac1-priv
192.168.0.102   srac2-priv.example.com srac2-priv

##SCAN IP
92.0.2.105    srac-scan.example.com    srac-scan

安装
1.    关闭防火墙、SELinux

# chkconfig iptables off
# chkconfig ip6tables off
# vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
重启后生效

2.    查看修改主机名

# hostname        (查看hostname)
# vi /etc/sysconfig/network    (如果hostname不合适修改该文件)
建议在安装操作系统时设置合适的主机名

3.    修改/etc/hosts

# vi /etc/hosts增加以下内容
##Public Network 
92.0.2.101     srac1.example.com      srac1
92.0.2.102     srac2.example.com      srac2

##Public Virtual IP (VIP) addresses 
92.0.2.103     srac1-vip.example.com  srac1-vip
92.0.2.104     srac2-vip.example.com  srac2-vip

##Private Interconnect
192.168.0.101   srac1-priv.example.com srac1-priv
192.168.0.102   srac2-priv.example.com srac2-priv

##SCAN IP
92.0.2.105    srac-scan.example.com    srac-scan

4.    创建用户和组

# /usr/sbin/groupadd -g 501 oinstall
# /usr/sbin/groupadd -g 502 dba
# /usr/sbin/groupadd -g 503 oper
# /usr/sbin/groupadd -g 504 asmadmin
# /usr/sbin/groupadd -g 505 asmoper
# /usr/sbin/groupadd -g 506 asmdba

# /usr/sbin/useradd -u 501 -g oinstall -G dba,oper,asmdba,asmadmin,asmoper grid
# /usr/sbin/useradd -u 502 -g oinstall -G dba,oper,asmdba oracle
# passwd grid
# passwd oracle# id grid# id oracle

5.    配置内核参数

# vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 4294967296            # kernel.shmmax/kernel.shmmni可以大不能小
kernel.shmmax = 68719476736        #超过memory_target,现在配置为64G
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128        #(PROCESSES+10 (PROCESSES+10)*128 PROCESSES+10 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
# /sbin/sysctl -p
注:kernel.shmall= kernel.shmmax/ kernel.shmmni是理论值,一般设置偏大一点,按照kernel.shmmax/8设置即可

# 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

# vi /etc/pam.d/login
session required pam_limits.so

# vi /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

6.    停止NTP服务

# /sbin/service ntpd stop
# service ntpd status
# mv /etc/ntp.conf /etc/ntp.conf.bak
停用NTP服务后,grid组件安装时会自动启用oracle自带的时钟同步服务。

7.    增加/dev/shm大小

大小要超过memery_target
# mount -o remount,size=4G /dev/shm
# vi /etc/fstab
tmpfs    /dev/shm       tmpfs   defaults,size=4G        0 0

8.    创建目录并修改权限

# mkdir -p /u01/app/oracle
# mkdir -p /u01/app/grid
# mkdir -p /u01/app/11.2.0/grid
# chown -R grid:oinstall /u01/app/grid
# chown -R grid:oinstall /u01/app/11.2.0
# chown -R oracle:oinstall /u01/app/oracle
# chmod -R 775 /u01
# mkdir -p /u01/app/oraInventory
# chown -R grid:oinstall /u01/app/oraInventory
# chmod -R 775 /u01/app/oraInventory

9.    修改环境变量

# su – grid
$ vi .bash_profile
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:$ORACLE_HOME/lib32
export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"
export NLS_LANG=American_america.ZHS16GBK
export PATH=$ORACLE_HOME/bin:$PATH
$ source .bash_profile# su - oracle$ vi .bash_profileexport ORACLE_SID=xdja1export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32export NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"export NLS_LANG=American_america.ZHS16GBKexport PATH=$PATH:$ORACLE_HOME/bin$ source .bash_profile注:srac2节点上需要把红色部分分别改为对应的+ASM2和xdja2;oracle用户的ORACLE_SID按照规划的实例名进行相应设置,例如规划实例名为xdja,这里的ORACLE_SID分别设置为xdja1/xdja2

10.    安装依赖包

首先配置本地yum源,软后使用yum命令安装所有依赖包
# yum -y install binutils compat-libcap1  compat-libstdc++-33 elfutils-libelf-devel gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat unixODBC unixODBC-devel libXp parted vim xorg-x11-utils xorg-x11-xauth unzip

11.    配置共享存储

查看是否认出前面配置的共享磁盘
# ll /dev/sd*

查出每块共享磁盘的wwid
# scsi_id --whitelisted --replace-whitespace --device=/dev/sdb
36000c29cc2059bd2971fa2c85def1bb7
# scsi_id --whitelisted --replace-whitespace --device=/dev/sdc
36000c29291defedaa634a5b6edcf005d
# scsi_id --whitelisted --replace-whitespace --device=/dev/sdd
36000c29b22662652d2aed62610921779
# scsi_id --whitelisted --replace-whitespace --device=/dev/sde
36000c297efa48942f5c92f20c5301103
# scsi_id --whitelisted --replace-whitespace --device=/dev/sdf
36000c295385cc5aec648a12c665d88e0

根据wwid对共享磁盘进行绑定
# vim /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29cc2059bd2971fa2c85def1bb7", NAME="asm-diskb", OWNER="grid",GROUP="oinstall", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29291defedaa634a5b6edcf005d", NAME="asm-diskc", OWNER="grid",GROUP="oinstall", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c29b22662652d2aed62610921779", NAME="asm-diskd", OWNER="grid",GROUP="oinstall", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c297efa48942f5c92f20c5301103", NAME="asm-diske", OWNER="grid",GROUP="oinstall", MODE="0660"
KERNEL=="sd*", BUS=="scsi", PROGRAM=="/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/$name",RESULT=="36000c295385cc5aec648a12c665d88e0", NAME="asm-diskf", OWNER="grid",GROUP="oinstall", MODE="0660"

重启udev,使配置生效
# start_udev

12.    安装GI

选择第三项,跳过update 
选择第一项,集群部署 
 
选择第二项,高级安装
 
默认选择即可
 
集群名称自己定义,SCAN Name按照/etc/hosts中规划的进行设置,端口默认1521,勾选掉Configure GNS的复选框



增加2节点的配置,按照/etc/hosts中的规划添加 



配置SSH互信,输入grid用户的密码,点击Setup 



选择网卡的类型,公网和私网要分清楚 



选择第一项,ASM管理 



磁盘组名称输入OCR,冗余级别选择Normal,磁盘选择asm-diskb/ asm-diskc/ asm-diskd 



选择第二项,使用统一密码,密码根据需求自己定义 



点Yes强制设置密码 



选择第二项,不使用IPMI 



检查用户组分配情况,一般默认都是对的 



检查Oracle Base和Software Location,应该和环境变量中一致,否则检查环境变量 



保持默认即可 




界面上的2个报错点击忽略 



点击Install安装 



两个节点依次执行root脚本,一定要等第一个节点执行完成后,再在第二个节点上执行 



点击OK忽略报错 



点击Yes继续 



安装完成,点击Close关闭安装界面


 
 
13.    创建ASM磁盘

创建磁盘组DATA,选择asm-diskf,冗余级别选择External

创建磁盘组FRA,选择asm-diske,冗余级别选择External
  

 
 
14.    安装database

勾选掉MOS的复选框
 
选择第三项,跳过升级
 
选择第二项,仅安装数据库软件
 
选择2个节点,输入oracle用户密码,点击Setup配置SSH互信
 

保持默认即可
 
现在第一项,企业版

检查Oracle Base和Software Location,应该与环境变量保持一致,否则检查环境变量

检查用户组设置,一般默认设置是对的

界面中的3个报错点击忽略即可

点击Yes继续
 
点击Install安装
 
依次在两节点执行root脚本
 
安装完成,点击Close关闭界面

15.    dbca建库

选择RAC数据库选择创建数据库
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
选择一般用途
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
输入实例名,要跟环境变量保持一致
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
选择配置EM
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
设置密码
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
选择ASM
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
Database Area 选择 +DATA
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
设置ASMSNMP的密码
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
为闪回区选择 +FRA
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
不创建示例
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
内存根据实际情况进行分配
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
设置连接数
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
设置字符集,一定要设置正确,无法修改
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
可以修改一些控制文件信息和Redo大小数量等,实验环境直接下一步即可
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
点击Finish开始创建数据库
RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境

相关推荐