Oracle 11g R2+RAC+ASM+OracleLinux6.4安装详解

更新时间:2024-01-27 05:46:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Oracle 11g R2+RAC+ASM+OracleLinux6.4安装详解

2014-12-08 18:10:28

(图)

分类: Oracle

一、版本说明

发现网上相关文章很多但是不是很专,因此细化版本为了使文章更加实用。 这次搭建的是Oracle 11g R2 11.2.0.4的RAC环境,使用的操作系统版本为Oracle Linux 6.4

点击(此处)折叠或打开

1. 2. 3. 4. 5. 6.

[root@node1 ~]# lsb_release -a

LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:

graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch

Distributor ID: OracleServer

Description: Oracle Linux Server release 6.4 Release: 6.4 Codename: n/a

内核版本:

点击(此处)折叠或打开

1. 2.

[root@node1 ~]# uname -r 2.6.39-400.17.1.el6uek.x86_64

UEK代表Unbreakable Enterprise Kernel,是Oracle专门为Oracle Linux定制的内核,可以提供在线支持和对数据库的支持,算是OracleLinux的卖点之一。(本文中一些配置过程会因实用UEK版本而得到简化)

二、Oracle 11g R2 RAC安装整体步骤

? ? ? ? ?

1.服务器准备 (system, storage, and network administration):

安装操作系统并升级到满足Oracle安装要求的版本。 创建安装所需要的组、用户以及软件的家目录。 设置GNS域名如果您打算部署GNS,并且完成网络地址在DNS和服务器上的配置。 设置所要求的存储。

将所有安装文件拷贝到一个节点上。

2.安装Oracle Grid集群基础架构, 包括Oracle Clusterware和Oracle ASM (system and storage administration):

为集群安装Oracle Grid 基础架构软件。在安装过程中,Fixup脚本进行操作系统参

数、SSH和用户环境变量等参数的附加调整。

升级Oracle Clusterware和Oracle ASM到最新补丁。

3.安装Oracle RAC (database administration):

安装Oracle RAC 打补丁到最新版本

? ? ? ?

? 完成安装后的调试

三、详细安装过程及说明(参考官方文档)

1.通过SecureCRT或TerminalX建立命令行连接。

2.在每一个节点上添加安装Oracle Grid的用户、组和家目录,并设置权限。

点击(此处)折叠或打开

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.

# /usr/sbin/groupadd -g 1000 oinstall # /usr/sbin/groupadd -g 1020 asmadmin # /usr/sbin/groupadd -g 1021 asmdba # /usr/sbin/groupadd -g 1022 asmoper # /usr/sbin/groupadd -g 1031 dba # /usr/sbin/groupadd -g 1032 oper

# useradd -u 1100 -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid # useradd -u 1101 -g oinstall -G dba,asmdba,oper oracle # mkdir -p /u01/app/11.2.0/grid # mkdir -p /u01/app/grid # chown -R grid:oinstall /u01 # mkdir /u01/app/oracle

# chown oracle:oinstall /u01/app/oracle # chmod -R 775 /u01/

参照官方文档,采用GI与DB分开安装和权限的策略,对于多实例管理有利。

3.检查服务器各个节点的配置是否符合安装要求

I.服务器硬盘空间要求 /tmp目录大小至少:1GB

安装Grid Infrastracture所需空间:6.6GB 安装Oracle Database所需空间:4GB

此外安装过程中分析、收集、跟踪文件所需空间:10GB

建议总共至少30GB,放心!(此处不包含ASM或NFS的空间需求)

II.服务器内存要求

内存大小:至少2.5GB Swap大小:

当内存为2.5GB-16GB时,Swap需要大于等于系统内存。 当内存大于16GB时,Swap等于16GB即可。

III.检查和调试代码

?

查看内存及Swap大小的命令如下。

点击(此处)折叠或打开

1. 2.

?

# grep MemTotal /proc/meminfo # grep SwapTotal /proc/meminfo 查看/tmp目录以及配置单独lv的命令如下。

点击(此处)折叠或打开

1. 2. 3. 4.

# df -h /tmp

# lvcreate -L 2G -n lv_tmp vg_temp # mount /dev/vg_temp/lv_tmp /tmp # df -h /tmp

4.设置操作系统相关参数

这一项在非Oracle Linux的操作系统中算是一项比较繁琐的工作,然而我们这次安装的版本是Oracle Linux 6.4 withUnbreakable Enterprise

Kernel,因此我们有了更简单的办法,就是通过安装Oracle

Preinstallation RPM来实现相关操作系统参数的调整和软件包的安装。 这个安装包主要完成以下工作:

?

Automatically downloads and installs any additional RPM packages needed for installing Oracle Grid Infrastructure and Oracle Database, and resolves any dependencies

? ?

Creates an oracle user, and creates the oraInventory (oinstall) and OSDBA (dba) groups for that user

? ?

As needed, sets sysctl.conf settings, system startup parameters, and driver parameters to values based on recommendations from the Oracle Preinstallation RPM program

? ?

Sets hard and soft resource limits

? ?

Sets other recommended parameters, depending on your kernel version

?

此安装包位于操作系统安装盘的Packages目录下。

点击(此处)折叠或打开

1. 2. 3. 4. 5.

# cd /mnt/install_DVD # cd Packages

# ll | grep preinstall

-rw-r--r-- 1 root root 15524 Jan 16 2013 oracle-rdbms-server-11gR2-preinst

all-1.0-7.el6.x86_64.rpm

# rpm -ivh oracle-rdbms-server-11gR2-preinstall-1.0-7.el6.x86_64.rpm

安装包修改/etc/sysctl.conf的内容如下:

其中标有oracle-rdbms-server-11gR2-preinstall字样注释的便是安装包所添加的参数。 点击(此处)折叠或打开

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40.

# cat /etc/sysctl.conf

# Kernel sysctl configuration file for Red Hat Linux #

# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and # sysctl.conf(5) for more details.

# Controls IP packet forwarding net.ipv4.ip_forward = 0

# Controls source route verification net.ipv4.conf.default.rp_filter = 1

# Do not accept source routing

net.ipv4.conf.default.accept_source_route = 0

# Controls the System Request debugging functionality of the kernel kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename. # Useful for debugging multi-threaded applications. kernel.core_uses_pid = 1

# Controls the use of TCP syncookies net.ipv4.tcp_syncookies = 1

# Disable netfilter on bridges. net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0

# Controls the default maxmimum size of a mesage queue kernel.msgmnb = 65536

# Controls the maximum size of a message, in bytes kernel.msgmax = 65536

# Controls the maximum shared segment size, in bytes

# Controls the maximum number of shared memory segments, in pages

41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61.

4304

# oracle-rdbms-server-11gR2-preinstall setting for fs.file-max is 6815744 fs.file-max = 6815744

# oracle-rdbms-server-11gR2-preinstall setting for kernel.sem is '250 3200kernel.sem = 250 32000 100 128

0 100 128'

# oracle-rdbms-server-11gR2-preinstall setting for kernel.shmmni is 4096 kernel.shmmni = 4096

# oracle-rdbms-server-11gR2-preinstall setting for kernel.shmall is 1073741# oracle-rdbms-server-11gR2-preinstall setting for kernel.shmall is 2097152kernel.shmall = 1073741824

824 on x86_64 on i386

# oracle-rdbms-server-11gR2-preinstall setting for kernel.shmmax is 4398046# oracle-rdbms-server-11gR2-preinstall setting for kernel.shmmax is 4294967kernel.shmmax = 4398046511104

511104 on x86_64 295 on i386

# oracle-rdbms-server-11gR2-preinstall setting for net.core.rmem_default isnet.core.rmem_default = 262144

262144

# oracle-rdbms-server-11gR2-preinstall setting for net.core.rmem_max is 419net.core.rmem_max = 4194304

62. 63. 64. 65. 66. 67.

8576

# oracle-rdbms-server-11gR2-preinstall setting for net.core.wmem_default isnet.core.wmem_default = 262144

262144

# oracle-rdbms-server-11gR2-preinstall setting for net.core.wmem_max is 104net.core.wmem_max = 1048576

68. 69. 70. 71. 72. 73. 74.

# oracle-rdbms-server-11gR2-preinstall setting for fs.aio-max-nr is 1048576 fs.aio-max-nr = 1048576

# oracle-rdbms-server-11gR2-preinstall setting for net.ipv4.ip_local_port_rnet.ipv4.ip_local_port_range = 9000 65500

ange is 9000 65500

5.配置Oracle网络

I.硬件配置要求 ? 每个服务器节点至少需要2块网卡,一块对外网络接口,一块私有网络接口(心跳)。 ? 如果你通过OUI安装Oracle集群软件,需要保证每个节点用于外网或私网接口(网卡名)保证一致。比如,node1使用eth0作为对外接口,node2就不能使用eth1作为对外接口。

II.IP配置要求

?

存在为集群服务的DHCP

? ?

DHCP能为每个节点提供足够的IP,一个虚拟IP、3个SCAN IP

?

III.非GNS下手动配置IP实例

6.检查操作系统软件包

首先,根据操作系统版本到官方文档中找到安装包需求列表,如下图

可以通过mount安装盘或直接通过yum源检查和安装所需要的包:

点击(此处)折叠或打开

1. 2. 3. 4. 5.

# rpm -qa packages_name # rpm -ivh packages_name

# yum list packages_name # yum install packages_name

这里还要提一下:CVUdisk这个包也可以在这个时候一起安装好,以备之后使用CVU时会用到。

点击(此处)折叠或打开

1. 2. 3. 4. 5. 6. 7.

# 检查是否已经安装 # rpm -qi cvuqdisk

# 如果已安装需要先卸载之前的版本 # rpm -e cvuqdisk # 安装新版本

# CVUQDISK_GRP=oinstall; export CVUQDISK_GRP # rpm -ivh cvuqdisk-1.0.9-1.rpm

7.关闭NTP及端口范围参数修改

点击(此处)折叠或打开

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.

# Oracle建议使用Oracle Cluster Time Synchronization Service,因此关闭删除NTP # /sbin/service ntpd stop # chkconfig ntpd off

# rm /etc/ntp.conf (mv /etc/ntp.conf /etc/ntp.conf.old) # rm /var/run/ntpd.pid

检查TCP/UDP端口范围

# cat /proc/sys/net/ipv4/ip_local_port_range 如果已经显示9000 65500,就不用进行下面的步骤了

# echo 9000 65500 > /proc/sys/net/ipv4/ip_local_port_range # vim /etc/sysctl.conf # 添加此行:

# TCP/UDP port range

net.ipv4.ip_local_port_range = 9000 65500 # 重启网络

# /etc/rc.d/init.d/network restart

8.调整.bash_profile内容并设置显示地址

点击(此处)折叠或打开

1.

2. 3. 4. 5. 6. 7. 8. 9.

设置参数: $ su - root

# mkdir /mount_point/tmp # chmod 775 /mount_point/tmp # exit

$ vi .bash_profile 加入行:

TEMP=/mount_point/tmp

10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.

TMPDIR=/mount_point/tmp export TEMP TMPDIR 加入行:umask 022

加入行:DISPLAY=local_IP:0.0 ; export DISPLAY local_IP为你要将安装视图所显示的桌面地址

检查设置参数 $ umask $ env | more $ echo $DISPLAY $ echo $TEMP $ echo $TMPDIR

9.配置SSH互信

这是很关键的一步,虽然官方文档中声称安装GI和RAC的时候OUI会自动配置SSH,但为了在安装之前使用CVU检查各项配置,还是手动配置互信更优。

点击(此处)折叠或打开

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.

配置过程如下: 各节点生成Keys:

[root@rac1 ~]# su - oracle [oracle@rac1 ~]$ mkdir ~/.ssh [oracle@rac1 ~]$ chmod 700 ~/.ssh [oracle@rac1 ~]$ ssh-keygen -t rsa [oracle@rac1 ~]$ ssh-keygen -t dsa [root@rac2 ~]# su - oracle [oracle@rac2 ~]$ mkdir ~/.ssh [oracle@rac2 ~]$ chmod 700 ~/.ssh [oracle@rac2 ~]$ ssh-keygen -t rsa [oracle@rac2 ~]$ ssh-keygen -t dsa

在节点1上进行互信配置:

[oracle@rac1 ~]$ touch ~/.ssh/authorized_keys [oracle@rac1 ~]$ cd ~/.ssh

[oracle@rac1 .ssh]$ ssh rac1 cat ~/.ssh/id_rsa.pub >> authorized_keys [oracle@rac1 .ssh]$ ssh rac2 cat ~/.ssh/id_rsa.pub >> authorized_keys [oracle@rac1 .ssh]$ ssh rac1 cat ~/.ssh/id_dsa.pub >> authorized_keys [oracle@rac1 .ssh]$ ssh rac2 cat ~/.ssh/id_dsa.pub >> authorized_keys

在rac1把存储公钥信息的验证文件传送到rac2上 [oracle@rac1 .ssh]$ pwd

24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.

/home/oracle/.ssh

[oracle@rac1 .ssh]$ scp authorized_keys rac2:'pwd' oracle@rac2's password:

authorized_keys 100% 1644 1.6KB/s 00:00

设置验证文件的权限 在每一个节点执行:

$ chmod 600 ~/.ssh/authorized_keys

启用用户一致性

在你要运行OUI的节点以oracle用户运行(这里选择rac1): [oracle@rac1 .ssh]$ exec /usr/bin/ssh-agent $SHELL [oracle@rac1 .ssh]$ ssh-add

Identity added: /home/oracle/.ssh/id_rsa (/home/oracle/.ssh/id_rsa) Identity added: /home/oracle/.ssh/id_dsa (/home/oracle/.ssh/id_dsa)

验证ssh配置是否正确

以oracle用户在所有节点分别执行: ssh rac1 date ssh rac2 date ssh rac1-priv date ssh rac2-priv date

如果不需要输入密码就可以输出时间,说明ssh验证配置成功。必须把以上命令在两个节点都

运行,每一个命令在第一次执行的时候需要输入yes。

48. 如果不运行这些命令,即使ssh验证已经配好,安装clusterware的时候也会出现错误: 49. The specified nodes are not clusterable 50. 因为,配好ssh后,还需要在第一次访问时输入yes,才算是真正的无障碍访问其他服务器。

请谨记,SSH互信需要实现的就是各个节点之间可以无密码进行SSH访问。

10.为Grid集群基础软件配置存储(使用ASM)

Oracle所允许的存储主要有ASM、NFS和ACFS等,这里仅介绍ASM的配置过程。

(1)安装ASM配置软件

点击(此处)折叠或打开

1. 2. 3.

依然是可以通过yum或者系统DVD光盘安装 # cd /mnt/install_DVD/Packages # rpm -qi oracleasm

4. 5. 6.

# rpm -qi oracleasm-support

# rpm -qi oracleasm-support-2.1.8-1.el6.x86_64.rpm

//我们是Oracle Linux系统,此版本已经集成了oracleasm和oracleasmlib,所以就不用

再安装了~

(2)规划ASM磁盘组

官方文档中规定了不同冗余策略下OCR、Voting Disk、Database和Recovery所需求的大小。

找到存储管理员,把规划好的磁盘都让他给你配置好~

(3)配置ASM

点击(此处)折叠或打开

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.

格式化每个磁盘

[root@rac1 ~]# fdisk /dev/sdb

完成后我们通过fdisk -l查看一下 [root@rac1 ~]# fdisk -l

[root@rac1 ~]# /usr/sbin/oracleasm configure -i Default user to own the driver interface []: grid Default group to own the driver interface []: asmadmin Start Oracle ASM library driver on boot (y/n) [n]: y Scan for Oracle ASM disks on boot (y/n) [y]: y

[root@rac1 ~]# /etc/init.d/oracleasm createdisk VOL1 /dev/sdb1 [root@rac1 ~]# /etc/init.d/oracleasm createdisk VOL2 /dev/sdc1 [root@rac1 ~]# /etc/init.d/oracleasm createdisk VOL3 /dev/sdd1

以下操作在另一个节点上进行,RAC2上操作 [root@rac2 ~]# oracleasm scandisks

这里用到的是asmlib来做磁盘设备管理的,这里大家也可以使用UDEV来管理,在RHEL6中a

smlib已经被废弃了,以后就是UDEV的天下

11.使用CVU检查各个节点的配置工作 千辛万苦终于到了安装前的最后一步~

点击(此处)折叠或打开

1. 2. 3. 4.

[root@node1 ~]# su - grid [grid@node1 ~]$ cd grid_sw

[grid@node1 grid_sw]$ ./runcluvfy.sh stage -pre crsinst -n node1,node2 -fi

xup -verbose

其中“grid_sw”为安装包解压出来的grid安装文件。

这一步的重点在于遇到报错怎样处理:

我这次安装遇到了PRVF-5636,此问题是由于没有DNS以及

/etc/resolv.conf 的设置引起的,因为脚本要用nslookup命令去检测两个节点的连通性。

12.安装GI和RAC

(1)安装Oracle Grid Infrastructure

本文来源:https://www.bwwdw.com/article/0bsw.html

Top