【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)...

RAC在LINUX上使用NFS安装前准备(六)

概述:写下本文档的初衷和动力,来源于上篇的《oracle基本操作手册》。oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总。然后形成体系的总结,一则进行回顾复习,另则便于查询使用。本图文文档亦源于此。阅读Oracle RAC安装与使用教程前,笔者先对这篇文章整体构思和形成进行梳理。由于阅读者知识储备层次不同,我将从Oracle RAC安装前的准备与规划开始进行整体介绍安装部署Oracle RAC。始于唐博士指导,对数据库集群进行配置安装,前后经历2,3个月的摸索。中间遇到不少问题。此文档也将一一记录整理。(本文原创/整理,转载请标注原文出处: RAC在LINUX上使用NFS安装前准备(六) )

 本文极客学院入口:Oracle-RAC 体验

白宁超

2015年7月19日10:28:41

目录

  1. 集群概念介绍(一)
  2. ORACLE集群概念和原理(二)
  3. RAC 工作原理和相关组件(三)
  4. 缓存融合技术(四)
  5. RAC 特殊问题和实战经验(五)
  6. ORACLE 11 G版本2 RAC在LINUX上使用NFS安装前准备(六)
  7. ORACLE ENTERPRISE LINUX 5.7下DATABASE 11G RAC集群安装(七)
  8. ORACLE ENTERPRISE LINUX 5.7下DATABASE 11G RAC数据库安装(八)
  9. ORACLE ENTERPRISE LINUX 5.7下DATABASE 11G RAC基本测试与使用(九)

 

介绍

                     【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)..._第1张图片

 

 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)..._第2张图片

 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)..._第3张图片

【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)..._第4张图片

 

 

 

下载软件

l  Oracle Enterprise Linux 5.7

l  Oracle 11 g版本2(11.2)和修改和数据库软件

操作系统安装

本文使用Oracle Enterprise Linux 5.7。 一般的图形操作系统安装指南在这里。 更具体地说,它应该是一个服务器安装的2 g交换(最好是3-4G),Linux禁用防火墙和安全。 Oracle建议默认服务器安装,但是如果你执行一个自定义安装包括以下包组:

GNOME桌面环境、编辑器、图形化网络、基于文本的网络、开发库、开发工具、服务器配置工具、管理工具、基地、系统工具、X窗口系统

符合本文的其余部分,以下信息应该设置在安装。

RAC1。

主机名:rac1.localdomain

IP地址eth0:192.168.0.101(公共地址)

默认网关eth0:192.168.0.1(公共地址)

IP地址eth1:192.168.1.101(私人地址)

默认网关eth1:没有

RAC2。

主机名:rac2.localdomain

IP地址eth0:192.168.0.102(公共地址)

默认网关eth0:192.168.0.1(公共地址)

IP地址eth1:192.168.0.102(私人地址)

默认网关eth1:没有

你可以自由地改变IP地址来满足您的网络,但要记住保持一致在本文的其余部分的调整。

Oracle安装先决条件

自动设置【所有节点】

如果您计划使用“oracle-validated”包执行所有先决条件设置,按照说明http://public-yum.oracle.com设置OL的yum资源库,然后执行以下命令。

# yum install oracle-validated

mkdir /media/disk    #新建挂载目录

cd /usr/local/src       #查看上传后的OEL镜像文件

mv rhel-server-6.5-x86_64-dvd.iso  / usr/local/src/OEL57.iso #重命名镜像文件

 mount -t iso9660 -o loop /usr/local/src/OEL57.iso  /media/ disk 

vim  /etc/yum.repos.d/rhel-source.repo

cd /etc/yum.repos.d/   

touch  rhel-media.repo   #建立yum配置文件

vi  rhel-media.repo   #编辑配置文件,添加以下内容

[OEL57]

name= Oracle Enterprise Linux 5.7  #自定义名称

baseurl=file:///media/disk/Service #本地光盘挂载路径

enabled=1   #启用yum源,0为不启用,1为启用

gpgcheck=1  #检查GPG-KEY,0为不检查,1为检查

yum install oracle-validated  #安装 oracle-validated 包并检查其安装配置

注:oracle-validated安装crs以及oracle dabase所需要补丁包,并创建oracle用户

额外的设置

执行以下步骤同时登录到“ol5 - 112 rac1”虚拟机作为根用户。

修改oracle用户密码:暂时设定密码oracle

Passwd oracle

安装下面的包从Oracle网格媒体在你定义组

cd /media/rpmname  #上传/grid/rpm包到/media下
rpm -Uvh cvuqdisk*  #安装rpm

如果您不使用DNS," / etc / hosts文件必须包含以下信息。

Vi   /etc/hosts

127.0.0.1       localhost.localdomain   localhost
# Public
192.168.0.101   rac1.localdomain        rac1
192.168.0.102   rac2.localdomain        rac2
# Private
192.168.1.101   rac1-priv.localdomain   rac1-priv
192.168.1.102   rac2-priv.localdomain   rac2-priv
# Virtual
192.168.0.103   rac1-vip.localdomain    rac1-vip
192.168.0.104   rac2-vip.localdomain    rac2-vip
# SCAN
192.168.0.105   scan.localdomain        scan
192.168.0.106   scan.localdomain        scan
192.168.0.107   scan.localdomain        scan
# NAS
192.168.0.108   nasl.localdomain        nasl

请注意。 SCAN(扫描地址)不是应该在主机文件中定义的。 而是应该定义在DNS之间循环3相同的子网的公共ip地址。 对于这个安装,我们将妥协和使用hosts文件。 这可能导致问题如果使用11.2.0.2向前。

SELinux的设置更改为允许通过编辑/etc/SELinux/config文件,确保SELinux标志设置如下。

SELINUX=disable

另外,这个变更可以通过使用GUI工具(系统>管理>安全级别和防火墙)。 单击SELinux选项卡和禁用功能。

# service iptables stop   #禁用防火墙
# chkconfig iptables off

停止NTP服务

# service ntpd stop
Shutting down ntpd:                                        [  OK  ]
# chkconfig ntpd off
# mv /etc/ntp.conf /etc/ntp.conf.orig
# rm /var/run/ntpd.pid

配置时间同步

Vi /etc/sysconfig/ntpd
OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid"
# service ntpd restart

创建oracle的安装目录

mkdir -p  /u01/app/11.2.0/grid
mkdir -p /u01/app/oracle/product/11.2.0/db_1
chown -R oracle:oinstall /u01
chmod -R 775 /u01/

以oracle身份登录,打开以下文件,将如下内容贴到末尾处

# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
 
ORACLE_HOSTNAME=rac1.localdomain; export ORACLE_HOSTNAME
ORACLE_UNQNAME=RAC; export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
GRID_HOME=/u01/app/11.2.0/grid; export GRID_HOME
DB_HOME=$ORACLE_BASE/product/11.2.0/db_1; export DB_HOME
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
ORACLE_SID=RAC1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
BASE_PATH=/usr/sbin:$PATH; export BASE_PATH
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH
 
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
 
if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi
 
alias grid_env='. /home/oracle/grid_env'
alias db_env='. /home/oracle/db_env'

注意:rac2节点处修改:

ORACLE_HOSTNAME=rac2.localdomain; export ORACLE_HOSTNAME
ORACLE_SID=RAC2; export ORACLE_SID

两个节点都创建一个文件/home/oracle/ grid_env,并添加以下内容。

ORACLE_HOME=$GRID_HOME; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH
 
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

两个节点都创建一个文件/home/oracle/db_env,并添加以下内容。Rac2修改ORACLE_SID=RAC2

#touch /home/oracle/db_env
#vi    /home/oracle/db_env
ORACLE_SID=RAC1; export ORACLE_SID
ORACLE_HOME=$DB_HOME; export ORACLE_HOME
PATH=$ORACLE_HOME/bin:$BASE_PATH; export PATH
 
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH

关机:

# shutdown -r now 或者 # init 0

创建共享磁盘

首先,我们需要设置一些NFS共享。

 

在这种情况下我们将做这个在RAC1节点上,但你可以在NAS或服务器上。 在RAC1节点上创建以下目录。

mkdir /shared_config
mkdir /shared_grid
mkdir /shared_home
mkdir /shared_data

在文件/etc/exports末尾添加以下代码:

vi /etc/exports
/shared_config              *(rw,sync,no_wdelay,insecure_locks,no_root_squash)
/shared_grid                 *(rw,sync,no_wdelay,insecure_locks,no_root_squash)
/shared_home                 *(rw,sync,no_wdelay,insecure_locks,no_root_squash)
/shared_data                 *(rw,sync,no_wdelay,insecure_locks,no_root_squash)

运行以下命令到处NFS共享

chkconfig nfs on
service nfs restart

RAC1和RAC2创建Oracle软件安装目录

mkdir -p /u01/app/11.2.0/grid
mkdir -p /u01/app/oracle/product/11.2.0/db_1
mkdir -p /u01/oradata
mkdir -p /u01/shared_config
chown -R oracle:oinstall /u01/app /u01/app/oracle /u01/oradata /u01/shared_config
chmod -R 775 /u01/app /u01/app/oracle /u01/oradata /u01/shared_config

添加以下行到/etc/fstab文件中

# vi  /etc/fstab
nas1:/shared_config /u01/shared_config  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=600,rsize=32768,wsize=32768,actimeo=0  0 0
nas1:/shared_grid   /u01/app/11.2.0/grid  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=600,rsize=32768,wsize=32768,actimeo=0  0 0
nas1:/shared_home   /u01/app/oracle/product/11.2.0/db_1  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=600,rsize=32768,wsize=32768,actimeo=0  0 0
nas1:/shared_data   /u01/oradata  nfs  rw,bg,hard,nointr,tcp,vers=3,timeo=600,rsize=32768,wsize=32768,actimeo=0  0 0

挂载NFS到两个节点上

mount /u01/shared_config
mount /u01/app/11.2.0/grid
mount /u01/app/oracle/product/11.2.0/db_1
mount /u01/oradata

确保共享目录权限正确:授权访问权限

chown -R oracle:oinstall /u01/shared_config
chown -R oracle:oinstall /u01/app/11.2.0/grid
chown -R oracle:oinstall /u01/app/oracle/product/11.2.0/db_1
chown -R oracle:oinstall /u01/oradata

测试:在RAC1的/u01/oradata目录下创建一个测试目录test,然后打开rac的/u01/oradata查看是否存在,并在rac2删除,查看rac1是否同步

RAC1 #cd /u01/oradata              
RAC1 #mkdir –r test
RAC1 #ls
 
RAC2 # cd /u01/oradata
RAC2 #ls
RAC2 #rm –rf test

参考文献


  1. Oracle的三种高可用集群方案
  2. 集群概念介绍:栢图教育 Oracle 高级课程——理论教材
  3. Oracle 11 RAC生存指南
  4. Oracle 11gR2 RAC管理与性能优化
  5. Oracle Database 11g Release 2 RAC On Linux Using NFS
  6. 使用 VirtualBox 在 Oracle Linux 5.7 上安装Oracle Database 11g Release 2 RAC 的最佳实践
  7. Oracle RAC安装配置-NFS(一)
  8. tnsnames.ora 监听配置文件详解(博客园)

相关文章


【MySql集群搭建】   真机环境下MySQL-Cluster搭建文档

【Hadoop集群搭建】Hadoop集群的配置(一)

【Hadoop集群搭建】Hadoop集群的配置(二) 

你可能感兴趣的:(数据库,操作系统,网络)