RAC配置、安装
RAC 配置及安装
2012年12月30日 星期日
21:49
*******************************************************************************
一、RAC (real application cluster 真正的可应用的集群工具) 安装规划
1)前期规划
确认集群节点数量,每个节点的主机名;
区分Public、Private NIC;确认第个主机的3个IP地址;
数据库存储技术选型(ASM/OCFS/RAW/Other);redo 1+0 data raid5
存储空间规划,包括软件安装位置、数据库文件位置规划;
2)配置节点主机
配置主机名和3个IP地址;
RPM包检查;
磁盘分区:配置裸设备;
系统需求(OS Kernel参数、空间需求);
创建Oracle用户,要求每个节点UID、GID相同;
定义Oracle用户的环境变量,包括$ORACLE_HOME、$CRS_HOME、资源数量限制。
用户等价;节点时间同步;
Hangcheck-timer模块配置
3)安装部署
安装Oracle Clusterware,安装后进行检查;
安装Oracle Database;创建ASM磁盘;
配置Listener;创建ASM;创建RAC数据库;
安装后测试,Failover和Loadbalance
4)实施阶段
主机配置
安装Clusterware
安装Oracle Database
配置Listener
创建ASM
创建Database
*******************************************************************************
二、实施安装
1)操作系统安装
*****************************************
添加共享磁盘
1.1)RAC1 添加磁盘
添加虚拟磁盘 20G 。
1.2)修改磁盘为共享模式
-> 虚拟介质设置 -> modify -> 选择 shareable
1.3) RAC2 添加磁盘
选择 existing .
*****************************************
配置hosts(所有节点)
# vi /etc/hosts
192.168.8.3 rac1 公有地址 eth0
192.168.8.4 rac1-vip vip地址
10.10.10.3 rac1-priv 私有地址 eth1
192.168.8.5 rac2 公有地址 eth0
192.168.8.6 rac2-vip vip地址
10.10.10.5 rac2-priv 私有地址 eth1
关闭邮件服务开机自动启动
#chkconfig sendmail off
*****************************************
启动RAC1 RAC2 修改主机名和IP (删除网关)
#vi /etc/sysconfig/network 修改主机名
NETWORKING=yes
HOSTNAME=XXXXX
#vi /etc/sysconfig/network-scripts/ifcfg-eth0 公有地址
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.8.3
GATEWAY=192.168.8.1
NETMASK=255.255.255.0
ONBOOT=yes
TYPE=Ethernet
#vi /etc/sysconfig/network-scripts/ifcfg-eth1 (从eth0复制而来 不需要网关)
DEVICE=eth1
BOOTPROTO=static
IPADDR=10.10.10.3
NETMASK=255.255.255.0
ONBOOT=yes
TYPE=Ethernet
重启网络服务
service network restart
*****************************************
主机配置 (RAC1 RAC2)
创建用户和组(所有节点,oracle用户和组具有相同uid和gid)
# groupadd -g 500 oinstall
# groupadd -g 501 dba
# useradd -u 500 -g oinstall -G dba oracle
# passwd oracle
*****************************************
创建目录
# mkdir -p /u01/app/oracle ORACLE主目录
# mkdir -p /u01/crs_1 CRS主目录
# chown -R oracle:oinstall /u01
# chmod -R 775 /u01
*****************************************
修改用户oracle的 .bash_profile(rac1,rac2)
注意 RAC1 prod1 RAC2 prod2
#su - oracle
#vi .profile
export EDITOR=vi
export ORACLE_SID=prod1
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORA_CRS_HOME=/u01/crs_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:$PATH
umask 022
*****************************************
配置主机间的信任关系(ssh)
RAC1:
# su - oracle
$ mkdir ~/.ssh
$ ssh-keygen -t rsa
$ ssh-keygen -t dsa
RAC2:
# su - oracle
$ mkdir ~/.ssh
$ ssh-keygen -t rsa
$ ssh-keygen -t dsa
RAC1:
$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys
$ cat .ssh/id_dsa.pub >> .ssh/authorized_keys
$ ssh rac2 cat .ssh/id_rsa.pub >> .ssh/authorized_keys
$ ssh rac2 cat .ssh/id_dsa.pub >>.ssh/authorized_keys
$ scp .ssh/authorized_keys rac2:~/.ssh
测试信任关系(在所有节点上)
$ ssh rac1 date 连接RAC1 测试时间准确性
$ ssh rac1-priv date
$ ssh rac2 date
$ ssh rac2-priv date
*****************************************
配置内核参数
# vi /etc/sysctl.conf
kernel.shmall = 2097171
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
#sysctl -p
*****************************************
为 oracle 用户设置 Shell 限制 限制每个用户访问内存时,打开内存的页面数,一个软限制一个硬限制
# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
*****************************************
#vi /etc/pam.d/login
session required /lib/security/pam_limits.so
# vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
*****************************************
配置 Hangcheck 计时器
hangcheck_tick=30 为每隔30秒检测一次心跳 hangcheck_margin=180 为180秒没有回应就确认对方挂了
# vi /etc/rc.local 心跳测试
modprobe hangcheck-timer hangcheck_tick=30 hangcheck_margin=180
配置ntp时间同步服务(rac1 server,rac2 client)
RAC1:
[root@rac1 ~]# chkconfig --list | grep time
# chkconfig time-udp on
# chkconfig time on
# chkconfig ntpd on
# chkconfig xinetd on
# service ntpd start
Starting ntpd: [ OK ]
# service xinetd start
Starting xinetd:
RAC2:
# crontab -e 创建文件
0-59/1 * * * * /usr/bin/rdate -s 192.168.8.3 >/dev/null 2>&1 服务器IP
0-59/1 * * * * /usr/sbin/ntpdate 192.168.8.3 >/dev/null 2>&1 服务器IP
# rpm -q make gcc compat-db
*****************************************
配置共享磁盘
# fdisk -l
Disk /dev/hdc: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hdc1 * 1 1305 10482381 83 Linux
/dev/hdc2 1306 1573 2152710 82 Linux swap
/dev/hdc3 1574 2610 8329702+ 83 Linux
Disk /dev/hdb: 42.9 GB, 42949672960 bytes 新加盘为hdb
16 heads, 63 sectors/track, 83220 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Disk /dev/hdb doesn't contain a valid partition table
# fdisk /dev/hdb
Command (m for help): m 查看帮助信息
Command (m for help): p 输出当前信息
Disk /dev/hdd: 42.9 GB, 42949672960 bytes
16 heads, 63 sectors/track, 83220 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Device Boot Start End Blocks Id System
Command (m for help): n 添加新的分区
Command action
e extended
p primary partition (1-4)
p 主分区
Partition number (1-4): 1
First cylinder (1-83220, default 1): 默认
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-83220, default 83220): 默认
Using default value 83220
Command (m for help): p 输出当前信息
Command (m for help): t change a partition's system id
Selected partition 1
Hex code (type L to list codes): L
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): p 输出当前信息
Command (m for help): w 保存修改
[root@rac1 ~]# fdisk -l
*****************************************
建立pv (物理卷)
# pv 两次 TAB TAB 可以查看所有子菜单
# pvcreate /dev/hdb1
# pvdisplay
建立vg(卷组) RAC1
# vgcreate racvg /dev/hdb1 vgcreate 卷组名 设备
# vgdisplay
建立lv (逻辑卷)
# lvcreate -L 200m -n ocr1 racvg -L 大小 -n 节点 卷组名
依次建立 裸设备
# ls -l /dev/mapper
total 0
crw------- 1 root root 10, 63 Sep 8 02:29 control
brw-rw---- 1 root disk 253, 7 Sep 8 05:55 racvg-archive
# reboot
# pvscan
# vgchange -a y racvg 强制同步数据
*****************************************
建立raw 设备(裸设备,在所有节点) (RAC1 RAC2 )
# vi /etc/sysconfig/rawdevices
/dev/raw/raw1 /dev/mapper/racvg-data
重启裸设备(所有节点)
# service rawdevices restart
# ls -l /dev/raw
改变裸设备的所有者(所有节点) (RAC1 RAC2)
# vi /etc/udev/permissions.d/50-udev.permissions
修改裸设备raw 所属用户
# service rawdevices restart(所有节点)
# ls -l /dev/raw
*****************************************
安装配置asm ( rac1 rac2 )
查看系统内核
[root@rac1 ~]# uname -a
启动smb服务
[root@rac1 ~]# service smb start
[root@rac1 ~]# smbpasswd -a oracle
安装和配置asm (注意要和内核匹配,在所有节点)(rac1 rac2 )
[root@rac1 ASM]# ls -l
oracleasm-2.6.9-67.ELsmp-2.0.3-1.i686.rpm
2012 oracleasmlib-2.0.4-1.el4.i386.rpm
2012 oracleasm-support-2.1.4-1.el4.i386.rpm
[root@rac1 ASM]# uname -a
Linux rac1 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:58:04 EST 2007 i686 i686 i386 GNU/Linux
[root@rac1 ASM]# rpm -ivh *
[root@rac1 ASM]# service oracleasm configure ( rac1 rac2 )
Configuring the Oracle ASM library driver.
This will configure the on-boot properties of the Oracle ASM library
driver. The following questions will determine whether the driver is
loaded on boot and what permissions it will have. The current values
will be shown in brackets ('[]'). Hitting <ENTER> without typing an
answer will keep that current value. Ctrl-C will abort.
Default user to own the driver interface []: oracle
Default group to own the driver interface []: dba
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]:
Writing Oracle ASM library driver configuration: done
Initializing the Oracle ASMLib driver: [ OK ]
Scanning the system for Oracle ASMLib disks: [ OK ]
*****************************************
安装Clusterware
直接 next
specify inventory directory and credentials 指定清单目录 详细目录 默认
specify home details 修改主目录
修改路径 /u01/crs_1
specify cluster configuration 修改集群信息
添加 RAC2 配置同RAC1
specify network interface usage 修改网络信息
修改etho 地址 public
specify Oracle cluster registry location
external redundancy 选择 external 只需 1 块盘
OCR location : /dev/raw/raw3 ocr地址
voting disk location: /dev/raw/raw6 vot地址
开始安装咯
安装进度
执行配置脚本
RAC1 RAC2 (ROOT用户运行脚本 注意顺序不可颠倒)
/u01/app/oracle/orainventory/orainstRoot.sh
/u01/crs_1/root.sh
最后报错: eth0 is not public .
解决方法:RAC2 root身份执行脚本 /u01/crs_1/bin/下的 vipca 图形化界面:选择 eth0
[root@rac2 ~]$ ./u01/crs_1/bin/vipca
选择 eth0
在IP Alias Name 里面输入 rac1 rac2后面的地址自动显示出来
rac1 rac1_vip 192.168.8.3 ...
rac2 rac2_vip 192.168.8.5 …
vipca 安装进度 就等安装完成咯
最后返回刚才位置点击 ok
这里最后的检测不能出问题
到此CRS就安装完了。
*****************************************
安装完成之后 crs_stat -t 查看 crs 状态
[oracle@rac1 ~]$ vi /etc/profile 添加path 方便root用户使用crs (RAC1 RAC2 )
export PATH=$PATH:/u01/crs_1/bin
[oracle@rac1 ~]$ source /etc/profile 刷新
*****************************************
4)安装Oracle Database
直接 next
选择企业版
specify home details 修改主目录
修改路径 /u01/app/oracle/product/10.2.0/db_1
这里默认选择了一项,因为可以做为单机的,也可以做为集群的,这里做集群,所以
选择 rac1 rac2
检测应该没问题
仅仅安装软件
这里就可以开始安装咯
rac1 rac2 root 用户执行脚本
/u01/app/oracle/product/10.2.0/db_1/root.sh
数据库也 ok了
5)配置Listener
[oracle@rac1 ~]$ netca 配置 监听
选择 cluster configuration 集群环境下
全选 两个节点
一路 next 下来
6)创建Database
node selection : 全选 rac1 rac2
general purpose 一般用途
设置数据库名 sid
management option 默认即可
设置密码
这里选择ASM
创建asm 实例
11设置密码
12 create initalization praameter file 下面选择PFILE(这个PFILE文件是ASM实例的PFILE)
ASM实例用来管理磁盘,要启动数据库的实例首先启动ASM的实例
asm 实例 创建中
asm disk groups(磁盘组)
create new :
DG1 normal 至少选择两块磁盘 (用作镜像)
RECOVER normal 至少选择两块磁盘 (用作镜像)
建立第一个磁盘组,名为DG1,用来存放数据库的数据
Redundancy 冗余有三种冗余方式
High 需要三块磁盘;
Normal需要两块磁盘;
External需要一块磁盘;
这里选择Normal,两块磁盘做镜像
这里指定数据文件存放在哪个磁盘组,这里默认为DG1
这里指定Flash Recovery的存放位置,这里指定 +RECOVERY
这面也可以启动归档,这里不启动
选择系统模板
解除SCOTT用户的锁,密码输入tiger
到此RAC安装结束!!!!!
********************************************************************************************
RAC配置、安装的更多相关文章
- bay——vSphere Oracle12cR2的RAC搭建安装之配置共享存储 - 副本
vSphere Oracle12cR2的RAC搭建安装之配置共享存储 https://blog.csdn.net/yuzifen/article/details/82496503 一.第一台机器添加两 ...
- ORACLE LINUX 6.3 + ORACLE 11.2.0.3 RAC + VBOX安装文档
ORACLE LINUX 6.3 + ORACLE 11.2.0.3 RAC + VBOX安装文档 2015-10-21 12:51 525人阅读 评论(0) 收藏 举报 分类: Oracle RA ...
- Oracle 12c RAC 静默安装文档
参考文档: https://docs.oracle.com/en/database/oracle/oracle-database/12.2/cwlin/index.html https://docs. ...
- 转载:【Oracle 集群】RAC知识图文详细教程(八)--Oracle 11G RAC数据库安装
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- Oracle11gR2(ASM,UDEV)的RAC搭建安装
基本信息: 1) 安装包: 操作系统:rhel-server-6.7-x86_64-dvd.iso rac安装包: Oracle11gR2:linux.x64_11gR2_database_1of2. ...
- Winserver2012下mysql 5.7解压版(zip)配置安装
一.安装 下载mysqlzip版本mysql不需要运行可执行文件,解压即可,下载zip版本mysqlmsi版本mysql双击文件即可安装,相对简单,本文不介绍此版本安装 配置环境变量打开环境变量配置页 ...
- 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署
少啰嗦,直接装 看过上一篇分布式文件系统 - FastDFS 简单了解一下的朋友应该知道,本次安装是使用目前余庆老师开源的最新 V5.05 版本,是余庆老师放在 Github 上的,和目前你能在网络上 ...
- 配置安装CocoPods后进行 项目基本配置
配置安装CocoPods后进行 项目基本配置总结 1)终端在文件根目录下输入 $ touch Podfile 创建一个空白的Podfile文件 2)然后在使用编辑器打开Podfile文件进行需要配置的 ...
- 【转】Ubuntu 14.04配置安装java环境和android开发环境(包括真机调试环境)
原文网址:http://my.oschina.net/HalZf/blog/347351 总要记录下过程,不然老是会忘记掉-真老了.-_-! 一.配置安装ubuntu 64位java环境: 1.下载l ...
随机推荐
- [cocos2d] 利用texture atlases生成动画
texturepacker可以方便地制作纹理贴图集(Texture Atlases),而且可以免费试用.(可在官网申请免费liscence) //利用软件将5帧png贴图生成1张大的png贴图和pli ...
- 14.8.1 Creating InnoDB Tables 创建InnoDB 表
14.8.1 Creating InnoDB Tables 创建InnoDB 表 创建一个InnoDB表,使用CREATE TABLE 语句,你不需要指定ENGINE=InnoDB 子句 如果Inno ...
- 利用WITH AS 优化FILTER
SQL> explain plan for select * from fxqd_list_20131115_new where (acct_no, oper_no, seqno, trans_ ...
- 利用row_number over 函数删除重复记录
开窗函数 Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个组返回多行,而聚合函数对于每个组只返回一行 SQ ...
- Win10开发必备:Visual Studio 2015正式版下载
7月21日凌晨消息,面向大众用户的Visual Studio 2015集成开发工具正式版免费试用版已经推出.本文帮大家汇总一下简体中文社区版.专业版以及企业版在线安装版以及ISO离线安装镜像下载地址. ...
- 在Xcode中使用Clang Format
Xcode中的Re-Indent,顾名思义,只是一个调整缩进的功能,完全依赖它来进行代码格式化显然不够用.我们使用了一个叫做ClangFormat-Xcode的插件,配合Re-Indent一起来做代码 ...
- 《A First Course in Probability》-chape4-离散型随机变量-方差
为了描述一组数据的均值,我们引入了数学期望的概念,为了描述一组数据相对均值的波动情况,我们引入了方差. 能够看到,方差的本质也是一个期望,那么我们就能够利用期望的定义将其继续展开. 方差的一条重要性质 ...
- 如何优化cocos2d程序的内存使用和程序大小:第二部分_(转)
减少你的程序的大小 把纹理的颜色位深度减少到16位,不仅可以减少内存压力,还可以有效地减少程序的体积.但是,我们还有其它方法可以更进一步地减少程序的大小. TexturePacker PNG 图片优化 ...
- poj3252 Round Numbers
Round Numbers Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 7625 Accepted: 2625 Des ...
- Linux Resin 安装
1 Resin 下载 Resin 官方下载网址. 最新版下载 resin-4.0.36.tar.gz(免费版) resin 安装须要提前配置好jdk.配置jdk请看上面文章 2 Resin 安装 (1 ...