RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境
实验环境准备
虚拟机: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 "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR1.vmdk"
vmware-vdiskmanager.exe -c -s 2g -a lsilogic -t "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR2.vmdk"
vmware-vdiskmanager.exe -c -s 2g -a lsilogic -t "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR3.vmdk"
vmware-vdiskmanager.exe -c -s 5g -a lsilogic -t "D:\vmware\sharedisk\Shared_Virtual_Disk_FRA.vmdk"
vmware-vdiskmanager.exe -c -s 6g -a lsilogic -t "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 = ""
diskLib.dataCacheMaxReadAheadSize = ""
diskLib.dataCacheMinReadAheadSize = ""
diskLib.dataCachePageSize= ""
diskLib.maxUnsyncedWrites = "" scsi1.present = "TRUE"
scsi1.virtualDev = "lsilogic"
scsil.sharedBus = "VIRTUAL" scsi1:.present = "TRUE"
scsi1:.mode = "independent-persistent"
scsi1:.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR1.vmdk"
scsi1:.deviceType = "disk"
scsi1:.redo = "" scsi1:.present = "TRUE"
scsi1:.mode = "independent-persistent"
scsi1:.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR2.vmdk"
scsi1:.deviceType = "disk"
scsi1:.redo = "" scsi1:.present = "TRUE"
scsi1:.mode = "independent-persistent"
scsi1:.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_OCR3.vmdk"
scsi1:.deviceType = "disk"
scsi1:.redo = "" scsi1:.present = "TRUE"
scsi1:.mode = "independent-persistent"
scsi1:.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_FRA.vmdk"
scsi1:.deviceType = "disk"
scsi1:.redo = "" scsi1:.present = "TRUE"
scsi1:.mode = "independent-persistent"
scsi1:.fileName = "D:\vmware\sharedisk\Shared_Virtual_Disk_DATA.vmdk"
scsi1:.deviceType = "disk"
scsi1:.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 oinstall
# /usr/sbin/groupadd -g dba
# /usr/sbin/groupadd -g oper
# /usr/sbin/groupadd -g asmadmin
# /usr/sbin/groupadd -g asmoper
# /usr/sbin/groupadd -g asmdba # /usr/sbin/useradd -u -g oinstall -G dba,oper,asmdba,asmadmin,asmoper grid
# /usr/sbin/useradd -u -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 =
net.core.wmem_default =
net.core.wmem_max =
# /sbin/sysctl -p
注:kernel.shmall= kernel.shmmax/ kernel.shmmni是理论值,一般设置偏大一点,按照kernel.shmmax/8设置即可 # vi /etc/security/limits.conf
grid soft nproc
grid hard nproc
grid soft nofile 1024是
grid hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile # 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
8. 创建目录并修改权限
# mkdir -p /u01/app/oracle
# mkdir -p /u01/app/grid
# mkdir -p /u01/app/11.2./grid
# chown -R grid:oinstall /u01/app/grid
# chown -R grid:oinstall /u01/app/11.2.
# chown -R oracle:oinstall /u01/app/oracle
# chmod -R /u01
# mkdir -p /u01/app/oraInventory
# chown -R grid:oinstall /u01/app/oraInventory
# chmod -R /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_profile
export ORACLE_SID=xdja1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
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=$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++- \
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/-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="" 重启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数据库选择创建数据库

选择一般用途

输入实例名,要跟环境变量保持一致

选择配置EM

设置密码

选择ASM

Database Area 选择 +DATA

设置ASMSNMP的密码

为闪回区选择 +FRA

不创建示例

内存根据实际情况进行分配

设置连接数

设置字符集,一定要设置正确,无法修改

可以修改一些控制文件信息和Redo大小数量等,实验环境直接下一步即可

点击Finish开始创建数据库

RHEL6.6安装Oracle 11g RAC - 基于VMware的实验环境的更多相关文章
- centos7.6静默安装oracle 11G RAC
环境介绍, esxi6.0 ,VMware vSphere Client6.0 linux 版本Centos7.6(最小化安装) Oracle 版本 oracle 11g 11.2.0.4 虚拟化环境 ...
- 安装Oracle 11g RAC R2 之Linux DNS 配置
Oracle 11g RAC 集群中引入了SCAN(Single Client Access Name)的概念,也就是指集群的单客户端访问名称.SCAN 这个特性为客户端提供了单一的主机名,用于访问集 ...
- linux安装oracle 11g rac
安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...
- Oracle安装部署之linux(redhat/centos)快速安装oracle 11g rac
安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...
- win10下安装Oracle 11g 32位客户端遇到INS-13001环境不满足最低要求
在以管理员身份运行setup.exe之后,出现了:[INS-13001]环境不满足最低要求,通过网上搜索之后找到了解决途径 首先,打开你的解压后的database文件夹,找到stage,然后cvu,找 ...
- 【Oracle 集群】Oracle 11G RAC教程之集群安装(七)
Oracle 11G RAC集群安装(七) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总. ...
- Oracle 12cR1 RAC 在VMware Workstation上安装(上)—OS环境配置
Oracle 12cR1 RAC 在VMware Workstation上安装(上)-OS环境配置 1.1 整体规划部分 1.1.1 所需软件介绍 Oracle RAC不支持异构平台.在同一个集群 ...
- Oracle 12cR1 RAC 在VMware Workstation上安装(中)—图形界面安装
Oracle 12cR1 RAC 在VMware Workstation上安装(中)—图形界面安装 1.1 图形界面安装 1.1.1 安装GRID 安装日志:/u01/app/oraInvento ...
- 【转】【Oracle 集群】Oracle 11G RAC教程之集群安装(七)
原文地址:http://www.cnblogs.com/baiboy/p/orc7.html 阅读目录 目录 集群安装 参考文献 相关文章 Oracle 11G RAC集群安装(七) 概述:写下本文档 ...
随机推荐
- python -- 类中--内置方法
isinstance 和 issubclass isinstance(obj,b) 检查是否obj是否是类b的对象 class A(object):pass class B(A):pass b=B ...
- pytorch更新
Pytorch如何更新版本与卸载,使用pip,conda更新卸载Pytorch 2018年05月22日 07:33:52 醉雨轩Y 阅读数 19047 今天我们主要汇总如何使用使用ubuntu,C ...
- 从规则引擎到复杂事件处理(CEP)
Drools Fusion既是规则引擎,又可以作为CEP.除了事件定义和时间推理之外,对于引擎本身也会有一些不同的使用.主要体现在会话时钟.流模式.滑动窗口和对事件的内存管理. 会话时钟 由于事件的时 ...
- 智课雅思短语---三、unshakable duty
智课雅思短语---三.unshakable duty 一.总结 一句话总结:不可推卸的义务 unshakable duty 1.satisfy/ meet the needs of…? 满足需求 2. ...
- 【知识小结】PHP使用svn笔记总结
在公司里,我们要养成每天上班前更新代码,下班前提交代码的习惯,并且做好说明. svn更新代码的时候,先右键点击需要更新的项目,在team中进入资源库同步界面,选择incoming mode,显示的文件 ...
- JS中数组声明
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 在Vue 中调用数据出现属性不存在的问题
这已经是我在调用数据时趟过几次的坑了,索性记录下来防止后面再犯: 一般我们请求数据来渲染一个页面的时候,请求下来的数据基本上都是数组或是对象,再通过列表循环和插值表达式渲染的页面:在data 中提前声 ...
- Lavarel之环境配置 .env
.env 文件位于项目根目录下,作为全局环境配置文件. 1. 配置参数 // 运行环境名称 APP_ENV=local // 调试模式,开发阶段启用,上线状态禁用. APP_DEBUG=true // ...
- LeekCode解题记录
昨天晚上有个LeekCode的比赛,两个半小时解五题,轻松解决前两题后,卡在第三题,还剩半小时时放弃,开始解第五题,解完但未验证通过,第四题只看了下题目. 排名第一的大佬只用了36分钟全部写完. 差距 ...
- C语言动态内存
动态分配内存的概述 在数组一章中,介绍过数组的长度是预先定义好的,在整个程序中固定不变,但是在实际的编程中,往往会发生这种情况,即所需内存空间取决于实际输入的数据,而无法预先确定.为了解决上述问题,c ...




保持默认即可







选择创建数据库