Installing Oracle11g R2 RAC on RedHat Linux AS 5.8

Installing Oracle11g R2 RAC on RedHat Linux AS 5.8

目录

1 系统运行环境

2 安装前准备

3 安装oracle grid

4 创建ASM磁盘

5 安装ORACLE软件

6 创建ORACLE数据库

7 验证

1 系统运行环境

1.1 硬件环境

产品名称

产品描述

数量

 

服务器节点

Cpu: Intel(R) Xeon(R) CPU E7- 4830  @ 2.13GHz

memory:8G

Core:4

Swap:6G

2

共享存储

一块214G scsi硬盘

1

 

1.2 软件环境

 

分类

项目

说明

备注

主机

主机名

S01,s02

 

操作系统

Red hat as 5

5.8

内核

2.6.18-308.el5

x86_64

 

 

 

数据库

 

数据库版本

Oracle Database 11g Release 2

(11.2.0.1.0) for Linux x86-64

 

运行模式

RAC

 

数据库名

test

 

实例名

Test1,test2

 

ASM

+DATA,+FLASH,+OCR_VOTE

 

 

存储

组件

文件系统

卷大小

ASM卷组名

ASM冗余

OCR-VOTE

ASM

3G

+OCR_VOTE

NOMAL

数据库文件

ASM

110G

+DATA

EXTERNAL

恢复区

ASM

110G

+FLASH

EXTERNAL

 

1.3 网络环境

 

 

 

网络配置

节点

公共IP

私有IP

虚拟IP

scan名称

SCAN IP

S01

172.31.2.36

192.168.0.2

172.31.2.251

s-scan

172.31.2.253

S02

172.31.2.62

192.168.0.3

172.31.2.63

 

2 安装前准备

2.1 检查系统硬件环境(两节点均操作)

检查内存:内存>=1G,

[root@S01]# grep MemTotal /proc/meminfo

检查swap:交换空间swap为4G(内存为1~2G时,swap为起1.5倍,如果大于2G,swap等于内存大小

[root@S01]#grep SwapTotal /proc/meminfo

检查/tmp:/tmp> 500M 最好不少于1G

[root@S01]# df -k /tmp

检查系统空间:系统磁盘空间还有不少于6G空间

[root@S01]#df –h

 

2.2检查软件环境(两节点均操作)

检查系统内核

[root@S01]#uname –r

检查系统版本

[root@S01]#cat /proc/version

检查软件包

[root@S01]#rpm –aq|grep rpm

2.3配置网络(两节点均操作)

网络规划

 

PUBLIK  IP

节点1:172.31.2.36       s01

节点2:172.31.2.62       s02

 

PRIV IP

节点1:192.168.0.2      s01-priv

节点2: 192.168.0.3       s02-priv

vip

节点1:172.31.2.251     s01-vip

节点2: 172.31.2.63       s02vip

SCAN IP

172.31.2.253  s-can

 

配置两节点的/etc/hosts文件

[root@S01]#Vi /etc/hosts

172.31.2.36     S01

172.31.2.62     S02

 

172.31.2.251    S01-vip

172.31.2.63     S02-vip

 

192.168.0.2     S01-priv

192.168.0.3     S02-priv

 

172.31.2.253    S-scan

2.4 配置用户访问(两节点均操作)

2.4.1创建相关的用户和用户组

[root@S01]#groupadd -g 501 oinstall

[root@S01]#groupadd -g 502 dba

[root@S01]#groupadd -g 503 oper

[root@S01]#groupadd -g 504 asmadmin

[root@S01]#groupadd -g 505 asmoper

[root@S01]#groupadd -g 506 asmdba

[root@S01]#useradd -g oinstall -G dba,asmdba,oper oracle

[root@S01]#useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid

[root@S01]#passwd oracle

[root@S01]#passwd grid

注:两节点分别完成以前操作,并要ID号保持一致

2.4.2创建相关软件目录

 

[root@S01]#mkdir -p /app/oraInventory

[root@S01]#chown -R grid:oinstall /app/oraInventory

[root@S01]#chmod -R 775 /app/oraInventory

[root@S01]#mkdir -p /app/11.2.0/grid

[root@S01]#chown -R grid:oinstall  /app/11.2.0/grid

[root@S01]#chmod -R 775 /app/grid

[root@S01]#mkdir -p /app/oracle

[root@S01]#chown -R oracle:oinstall  /app/oracle

[root@S01]#chmod -R 775 /app/oracle

[root@S01]#mkdir -p /app/oracle/product/11.2.0/db_1

[root@S01]#chown -R oracle:oinstall /app/oracle/product/11.2.0/db_1

[root@S01]#chmod -R 775 /app/oracle/product/11.2.0/db_1

2.4.3配置ORACLE用户环境

[root@S01]#su – oracle

[grid@S01]#vi .bash_profile

export TMP=/tmp;

export TMPDIR=$TMP;

export ORACLE_HOSTNAME=S01;

export ORACLE_BASE=/app/oracle;

export ORACLE_HOME=$ORACLE_BASE/product/11g/db_1;

export ORACLE_UNQNAME=test;

export ORACLE_SID=test1;

export ORACLE_TERM=xterm;

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;

 

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

注:节点2操作类同

2.4.4配置GRID用户环境

[root@S01]#su - grid

[grid@S01]#vi .bash_profile

export TMP=/tmp;

export TMPDIR=$TMP;

export ORACLE_HOSTNAME=S02;

export ORACLE_SID=+ASM2;

export ORACLE_BASE=/app/grid;

export ORACLE_HOME=/app/11.2.0/grid;

export NLS_DATE_FORMAT="yy-mm-dd HH24:MI:SS";

export PATH=$ORACLE_HOME/bin:$PATH;

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;

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

注:节点2操作类同

2.4.5配置SSH互信访问

两个节点

[grid@S01]su - oracle

[oracle@S01]mkdir ~/.ssh

[oracle@S01]chmod 755 ~/.ssh

[oracle@S01]ssh-keygen -t rsa

[oracle@S01]ssh-keygen -t dsa

在一个节点1 上

[oracle@S01]cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys

[oracle@S01]cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

[oracle@S01]scp  ~/.ssh/authorized_keys s02: ~/.ssh/authorized_keys

在第二个节点上

[oracle@S02]cat ~/.ssh/id_rsa.pub >> ./.ssh/authorized_keys

[oracle@S02]cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

[oracle@S02]scp  ~/.ssh/authorized_keys s01: ~/.ssh/authorized_keys

 

验证等效性

[oracle@s01 ~]$ ssh s02 date

[oracle@s01 ~]$ ssh s02-priv date

[oracle@s01 ~]$ ssh s01 date

[oracle@s01 ~]$ ssh s01-priv date

[oracle@s02 ~]$ ssh s02 date

[oracle@s02 ~]$ ssh s01 date

[oracle@s02 ~]$ ssh s01-priv date

[oracle@s02 ~]$ ssh s02-priv date

 

注:grid用户同oracle用户一样设置

 

2.5 配置OS系统环境(两节点均操作)

2.5.1 用户资源限制参数调整

[root@s01 ~]# cat >> /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

EOF

2.5.2 用户登录参数调整

 [root@s01 ~]# cat >> /etc/pam.d/login <

session    required     pam_limits.so

EOF

注: 在安装完Oracle之后,可能会发现在本地登录系统时,即使密码输入正确也无法正常登录,这很有可能与/etc/pam.d/login的配置有关。由于很多文档login文件加入的是session required pam_limits.so配置,这就可能导致安装64位的操作系统无法正常登录。按照上面的步骤在login文件中加入/lib64/security/pam_limits.so配置便可以正常登录。

 

 

2.5.3 配置集群时间同步服务

[root@s01 ~]#/etc/init.d/ntpd stop

[root@s01 ~]#chkconfig ntpd off

[root@s01 ~]#mv /etc/ntp.conf /etc/ntp.conf.org

[root@s01 ~]#rm /etc/ntp.conf

[root@s01 ~]#rm /var/run/ntpd.pid

注:也可以使用NTP但不用集群时间同步服务功能

[root@s01 ~]vi /etc/sysconfig/ntpd

OPTIONS=”-x –u ntp:ntp –p /var/run/ntpd.pid”中添加-X标志

[root@s01 ~]/sbin/service ntp restart

 

2.5.4 修改内核参数

[root@s01 ~]vi /etc/sysctl.conf

 

kernel.shmmax = 4294967295

kernel.shmall = 2097152

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 6815744

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

fs.aio-max-nr=1048576

生效:

[root@s01 ~]sysctl -p

 

2.6 配置存储

2.6.1 下载ASM

  根据OS版本和内核下载相应的ASM软件,具体依照

http://www.oracle.com/technology/global/cn/tech/linux/asmlib/install.html

2.6.2 安装ASM

 

[root@S01]#rpm –uvh *.rpm

[root@S02]#rpm –uvh *.rpm

 

2.6.3 配置ASM

[root@S01]# /etc/init.d/oracleasm configure

[root@S02]# /etc/init.d/oracleasm configure

 

User:grid

Dba:asmadmin

注不同位置的oracleasm提供不同的功能。

其中/usr/sbin下的oracleasm能够加载(init)/卸载(exit)ASMLib驱动、重命名ASMLib磁盘标签(renamedisk),以及下载最新的ASMLib驱动(update-driver);

/etc/init.d/下面的oracleasm包含日常维护中的启动、停止、重启、启用、禁用和配置的功能

2.6.4 格式化存储设备

[root@S01]#fdisk /dev/sdb

注 挂载到本地的iSCSI磁盘一定要分区后再使用,而且分区一定要是主分区。如果挂载的单张磁盘大于2TB,使用parted工具创建分区(fdisk不支持在大于2.2TB的磁盘上创建分区)。

 

2.6.5 创建ASM

[root@S01]#/etc/init.d/oracleasm createdisk OCR_VOTE1 /dev/sdb1

[root@S01]#/etc/init.d/oracleasm createdisk OCR_VOTE2 /dev/sdb2

[root@S01]#/etc/init.d/oracleasm createdisk OCR_VOTE3 /dev/sdb3

[root@S01]#/etc/init.d/oracleasm createdisk DATA  /dev/sdb5

[root@S01]#/etc/init.d/oracleasm createdisk FLASH /dev/sdb6

注  确保/dev/oracleasm/disks下文件的所有者都是grid:oinstall

2.6.6 验证

[root@s01 ~]# /etc/init.d/oracleasm listdisks

DATA

FLASH

OCR_VOTE1

OCR_VOTE2

OCR_VOTE3

 

注:ASM相关日志在/var/log/ oracleasm

3 安装oracle clusterware

3.1 安装前检验

[root@s01 ~]su – grid

[grid@s01 ~]cd /app/soft/

[grid@s01 grid]unzip p10404530_112030_Linux-x86-64_3of7.zip

[grid@s01 grid]cd grid

[grid@s01 grid]$ ./runcluvfy.sh stage -pre crsinst -n s01,s02 -verbose

3.1 正式安装clusterware

[grid@s01 grid]cd /app/soft/grid

[grid@s01 grid]./runInstaller

 

1)选择Install and Configure Grid infrastructure a Cluster

 

2) 选择Advanced Installation,并下一步

 

3) 选择English,并下一步

 

4)配置DNS解析,并下一步

 

5)选择Add,填写其它节点信息,并下一步

 

6)纠正公网,私网的网络地址,并下一步

7)选择ASM,并下一步

 

8)创建OCR_VOTE磁盘组,并下一步

 

9)填写帐户密码,并下一步

 

10)选择第二项,并下一步

11)核对操作系统组,并下一步

 

12)填写、核实GRID_BASE,GRID_HOME,并下一步

13)填写INVENTORY,并下一步

 

 

14)忽略可以忽略的,也可更正后重新CHECK,当不影响正常安装时,继续安装

15) 下一步

下一步

16)分别在两节点上按序运行以下两脚本,成功后下一步

[root@S01 ~]/app/oraInventory/orainstRoot.sh

[root@S02 ~]/app/oraInventory/orainstRoot.sh

[root@S01 ~]/app/11.2.0/grid/root.sh

[root@S02 ~]/app/11.2.0/grid/root.sh

 

注:当root.sh脚本有误时,需删除配置后再执行

[root@S01 ~]# /app/11.2.0/grid/crs/install/roothas.pl -delete -force –verbose

17)执行完,点ok。 结束Clusterware的安装

18)验证

[root@S01 ~]crs_stat -t

 

4 创建ASM磁盘

在安装Clusterware 的时候,会创建ASM 实例,但是它只创建了一个CRS 组来安装OCR 和Voting Disk。 在继续安装Oracle 数据库之前,GIP 需要创建一个DATA 和 FLASH等需要的ASM 磁盘组。在此用,ASM自带的创建工具来完成磁盘配置。

[grid@S01 ~]asmca

创建DATA组

 

创建FLASH组

 

5 安装ORACLE软件

[root@s01 ~]su – grid

[oracle@s01 grid]cd /app/soft/database

[oracle@s01 database]$ ./runInstaller

1) 可根据情况填写,并下一步

2)选择只安装软件,并下一步

3)选择rac database install,并下一步

4)语言推荐选择English,并下一步

 

 

5)选择企业版,并下一步

 

6)填写、核实ORACLE_BASE,ORACLE_HOME,并下一步

 

7)核实OS权利组,并下一步

 

 

8)需求检查,核定后下一步

 

9)下一步

 

10)下一步

11)两节点上分别执行下列脚本

[root@s01 ~]# /app/oracle/product/11g/db_1/root.sh

6 创建ORACLE数据库

[oracle@s01 grid]dbca

1)选择ORACLE RAC DATABASE,并下一步

2)选择create a database,并下一步

3)选择CUSTOME DATABASE,并下一步

4)填写SID,GLOBAL NAME,并下一步

5)选择OEM,并下一步

6)明确ORACLE用户密码,并下一步

7)明确database area,并下一步

8)配置归档信息,并下一步

 

9)下一步

10)修改内存分,连接数,字符集等信息,并下一步

11)修改数据文件大小,并下一步

12)填写DATABASE NAME,并下一步

13)完成

 

7 验证

启动OC4J

[root@s01 grid]# srvctl enable oc4j

[root@s01 grid]# srvctl start oc4j

启动GSD

[root@s01 grid]# srvctl enable nodeapps

[root@s01 grid]# srvctl start nodeapps

 

[root@s01 grid]crs_stat –t

 

错误1:

[INS-20802] Oracle Cluster Verification Utility failed

导致这个错误的原因是在/etc/hosts中配置了SCAN的地址,尝试ping这个地址信息,如果可以成功,则这个错误可以忽略

你可能感兴趣的:(oracle,rac)