虚拟机Linux6下安装Oracle 11G RAC(二)安装集群和DBMS

虚拟机Linux6下安装Oracle 11G RAC(三)创建数据磁盘组和实例

最近总在linux6的虚拟机上装Oracle 11g rac,每次安装的时候都会有些新的发现。接下来我会分三篇来详解如何在VM虚拟机下,在linux6上安装Oracle 11g RAC。

第一篇主要介绍linux6的环境准备,包括:配置双网卡,配置共享盘,配置参数。

以下以VM虚拟机,linux 6为基础。

1.添加双网卡(两台虚拟机都要添加)

添加后启动linux,并执行网络重启命令:

[root@localhost ~]# service network restart

在执行ifconfig -a就可以看到新网卡了。

2.配置共享盘(两台虚拟机都要加载共享盘)

2.1创建共享盘

Windos下cmd命令窗口,进入VM的安装目录下,执行以下命令:

创建vote盘,需要3块,每块2G

vmware-vdiskmanager.exe -c -s 2G -a lsilogic -t 2 "D:\VM\Oracle\ShareDisk11G\ocrvote.vmdk"

创建data盘,需要至少1块(根据冗余模式,需要不同的盘数),主要存放数据文件等,至少30G吧

vmware-vdiskmanager.exe -c -s 30G -a lsilogic -t 2 "D:\VM\Oracle\ShareDisk11G\data.vmdk"

2.2在VM上添加创建好的共享磁盘

关掉虚拟机,然后虚拟机设置,勾选硬盘,点击添加

勾选独立永久

文件名为share下的data.vmdk 还有一个ocrvote.vmdk都需要添加一遍,选择独立永久。

节点我习惯选择1:1,1:2等

添加一下参数到VM参数文件,类似下面这个vmx文件,注意节点为你选的节点

diskLib.dataCacheMaxSize = "0"

diskLib.dataCacheMaxReadAheadSize = "0"

diskLib.dataCacheMinReadAheadSize = "0"

diskLib.dataCachePageSize= "4096"

diskLib.maxUnsyncedWrites = "0"

disk.locking = "false"

disk.EnableUUID = "TRUE"

scsi1.sharedBus = "virtual"

scsi1:0.deviceType = "disk"

scsi1:0.redo = ""

scsi1:1.deviceType = "disk"

scsi1:1.redo = ""

2.3配置共享盘属主

共享盘已经加到虚拟机了,这时候启动linux,执行fdisk -l,能看到新加的盘,名字大概是sda,sdb之类的。

先执行:

for i in a b c d; 新加了4个盘,盘名是sda、sdb、sdc、sdd

再执行:

do

echo "KERNEL==\"sd*\", BUS==\"scsi\", PROGRAM==\"/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name\", RESULT==\"`/sbin/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$i`\", NAME=\"asm-disk$i\", OWNER=\"grid\", GROUP=\"oinstall\", MODE=\"0660\"" >> /etc/udev/rules.d/99-oracle-asmdevices.rules

done

最后执行:

start_udev

成功后执行ll /dev/asm*,就可以看到修改属主后的盘了。

3.关闭NetworkManager和防火墙

NetworkManager管理主机网络配置信息,该服务如果出现down的话会影响系统网络运行,建议关闭:

关闭运行中的服务

#service NetworkManager stop

关闭操作系统自启动

#chkconfig NetworkManager off

检查关闭情况

#chkconfig  --list NetworkManager

--------------------------------------------------------------------------------------

关闭运行中的服务

#service iptables stop

关闭操作系统自启动

#chkconfig iptables off

检查关闭情况

#chkconfig  --list iptables

--------------------------------------------------------------------------------------

编辑/etc/selinux/config 文件

[root@DBServer1 ~]# 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 - SELinux is fully disabled.

SELINUX=disabled

# SELINUXTYPE= type of policy in use. Possible values are:

#       targeted - Only targeted network daemons are protected.

#       strict - Full SELinux protection.

SELINUXTYPE=targeted

4.配置双网卡

2块网卡分别配置public IP和心跳IP,以下是例子:

 节点1节点2
public IPDEVICE=eth0
HWADDR=00:0C:29:FC:EC:38
TYPE=Ethernet
UUID=25176b33-b7aa-47e9-9350-0ca7e4acb2c8
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.211.101
NETMASK=255.255.255.0
GATEWAY=192.168.211.254
DEVICE=eth0
HWADDR=00:0C:29:FC:EC:38
TYPE=Ethernet
UUID=25176b33-b7aa-47e9-9350-0ca7e4acb2c8
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.211.102
NETMASK=255.255.255.0
GATEWAY=192.168.211.254
心跳IPDEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=10.0.0.101
NETMASK=255.255.255.0
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=10.0.0.102
NETMASK=255.255.255.0

配置好后执行网络重启命令:

service network restart

5.RPM包安装

首先挂载光驱:

mount -o loop oracle-linux-6.10.x86_64.iso /mnt

配置yum:

vi /etc/yum.repos.d/dvd.repo 添加如下:

[dvd]

name=dvd

baseurl=file:///mnt

gpgcheck=0

最后安装以下RPM包:

yum install  binutils compat-libstdc++-33 compat-libstdc++-296 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make openmotif sysstat unixODBC unixODBC-devel compat-libcap1 ksh -y

6.创建Oracle和Grid用户

groupadd -g 2000 oinstall

groupadd -g 2001 dba

useradd -u 3000 -g oinstall -G dba grid

useradd -u 3001 -g oinstall -G dba oracle

passwd grid    ----修改grid用户密码

passwd oracle   ----修改oracle用户密码

7.内核参数修改

vi /etc/sysctl.conf

kernel.shmall = 524288 --physical RAM size / pagesize For most systems, this will be the value

kernel.shmmax = 1073741824 --1/2 of physical RAM 

fs.file-max = 6815744 --512 x processes  

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.aio-max-nr = 1048576

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

执行sysctl -p 命令使以上设置生效

一般设置按照如上规则设置,如果文件中已经设置的值比计算结果大,以文件中本身的值为准

-----------------------------------------------------------------------------------------------

编辑/etc/pam.d/login 添加如下内容:

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

-----------------------------------------------------------------------------------------------

编辑/etc/security/limits.conf 添加如下内容:

 vi /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

8.环境变量设置

vi ~/.bash_profile        #当前用户环境变量

一节点:

grid 用户:

export ORACLE_BASE=/oracle/gridbase

export ORACLE_HOME=/oracle/grid/crs_1

export ORACLE_SID=+ASM1

export PATH=$ORACLE_HOME/bin:$PATH

-----------------------------------------------------------------------------------------------

oracle用户:

export ORACLE_BASE=/oracle/app

export ORACLE_HOME=/oracle/app/product/11.2.0/db_1

export ORACLE_SID=rac1

export PATH=$ORACLE_HOME/bin:$PATH

-----------------------------------------------------------------------------------------------

二节点:

grid

用户:

export ORACLE_BASE=/oracle/gridbase

export ORACLE_HOME=/oracle/grid/crs_1

export ORACLE_SID=+ASM2

export PATH=$ORACLE_HOME/bin:$PATH

-----------------------------------------------------------------------------------------------

oracle用户:

export ORACLE_BASE=/oracle/app

export ORACLE_HOME=/oracle/app/product/11.2.0/db_1

export ORACLE_SID=rac2

export PATH=$ORACLE_HOME/bin:$PATH

9.配置/etc/hosts

添加一下内容:
192.168.211.101         racdb1
192.168.211.102         racdb2

192.168.211.111         racdb1-vip
192.168.211.112         racdb2-vip

10.0.0.101              racdb1-priv
10.0.0.102              racdb2-priv

192.168.211.105         racdb-scan

 

到这里安装前的准备就已经结束了,在下一篇中我会介绍如何去安装集群软件和数据库软件。

Logo

更多推荐