实验环境:
普通PC一台(3GB内存,500GB硬盘)
Vmware Server 1.0.6版
RedHat Linux Enterprise 5.1
Oracle 10g for linux(10.2.0.1)
前言:
首先要感谢itpub里君三思学习笔记里的:《手把手教你用VMware在linux下安装 oracle10g RAC》文档,以及linux社区里 雷宇 的《Vmware+Linux+Oracle 10G RAC全程详细图解》,通过上述两文,以及一定的linux及oracle 基础,遇到文中没有提到的问题就google,经过几次的失败,也算是顺利安装完成!为了让后面的兄弟走更少的弯路,本人也在此记录一下,也给自己进一步加深理解RAC安装注意事项!
一、准备工作
VMware server ,可以免费下到,不建议使用VMware workstation,因为workstation 不支持共享存储,而且 VMware workstation是收费是!Vmware Server 1.0.6
下载地址:
http://download3.vmware.com/software/vmserver/VMware-server-installer-1.0.6-91891.exe
RHEL 5.1 之前可以在verycd上面下的,现在其实也可以,
下载地址:
http://www.verycd.gdajie.com/topics/206545/
oracle 10g for linux ,好像官网已经不提供10g下载了,现在只可以下载到11g了,还好,电驴上面也能找到,
下载地址:
http://www.verycd.gdajie.com/topics/57759/
clusterware,database 还有client 都有了!
二、设置 vmware 环境
vmware 软件安装过程这里就不详说了,以下是本人安装完成后的截图:
1、新建一个虚拟机,点击 File->New->Virtual Machine:
点击下一步
2、选择自定义配置(Custom):
下一步
3、选择操作系统,当然是linux:
下一步
4、给虚拟机文件选择一下存储位置,这里需注意需选择在分区空间足够大的目录下面,如,本人E盘有200多G空间,这样后面建立linux及asm存储文件有足够大的空间了!如果两个虚拟机都放在该盘下的话,该磁盘剩余空间至少要有 20G 。
5、设置虚拟机访问权限:
默认不选,下一步
6、虚拟机的启动与关闭选项:
也是默认即可,对后面安装没有太大的影响。
下一步
7、选择cpu个数,这里就选1个就ok了,当然如果是四核心的pc的话可以选择2个cpu:
下一步
8、分配虚拟机内存,内存还是足够的,就分1G吧,建议不少于512M。
下一步
9、选择网卡类型,这里选择桥接
下一步
10、选择I/O适配器的类型
下一步
11、创建磁盘
下一步
12、选择磁盘类型,这里一定要选择SCSI
下一步
13、设置虚拟磁盘大小,空间富足的就多给一些,安装操作系统和数据库所需空间至少为 8G, 建议不少于10G。
下一步
14、选择虚拟磁盘的存储路径E:\My Virtual Machines\rac1:
完成,由于新建的虚拟磁盘较大,所以需要一定的时间
就让它慢慢创建吧!
15、创建完成,进入虚拟机主界面
16、单击 edit virtual machine settings 添加一些设备
单击add
17、进入向导
下一步
18、添加磁盘,这里要牢记实验所需磁盘数量是五,除去本地磁盘之外,我们还需要额外的添加四块磁盘,其中两块ocr和vote作为clusterware安装所需,两块作为ASM磁盘:
下一步,跟前面添加磁盘相同操作
下一步
下一步,这里我们首先创建的是OCR跟VOTE这两块裸设备,因为他们不需要占用太大空间,这里我们给每块磁盘分配500MB大小的空间,并选择立即分配方式:
下一步,这里又必须要简单的说明一下了,我们在建立除本地硬盘之外的四块磁盘的时候,路径上一定要注意,不要把本地硬盘和其他四块磁盘放到一个目录下。 本地磁盘位于一个目录,裸设备磁盘位于另一个独立的目录,这样做主要是为实验后期磁盘克隆作考虑。
点击advanced
点击完成开始创建
接下来是两块ASM磁盘,每块磁盘分配12GB大小,这两块磁盘主要用来存放oracle数据,重复上述步骤作一些更改即可。
19、添加一块网块,因rac要求最少需要两块网卡,如下
下一步
君三思 里建议选择Host-only,但实际选择桥接方式也是可行的。另需说明的是,雷老师的文档是添加三块网卡,因其是为了方便接下来实验里使用其来搭建ftp来传oracle安装文件而用,而rac安装两块网卡是足够了,而且虚拟机环境设置IP与PC的IP同一网段,通过共享来完成oracle安装文件传送是很方便的,所以个人感觉没有必要再增加第三块网卡了,这样也减少出错的机率,当然你如果想学习更多的知识也是可以按照雷老师的做法去实验的,点击完成即可。
20、以下是所有设备添加完成的截图:
需注意的是后面添加的四块硬盘(ocr,vote,asm1,asm2)是跟第一块硬盘不在同一目录的,如下
第一块硬盘目录如下:
21、完成上述把光驱加载rhel5.1 iso文件:
至此,vmware环境基本配置完成。
三、安装linux系统
1、点击start this virtual machine,启动进入linux安装界面
在boot:后面输入 linux askmethod 进行安装
2、选择英语
3、键盘为us
4、从本地cdrom进行安装:
5、跳过光盘测试:
6、
7、安装num,没有就跳过吧
8、
skip
9、警告,将会初始化硬盘,所有数据会丢失,这里因为我们都是新建的磁盘,所以按yes。
10、进入选择分区方案,这里本人选择自定义,create custom layout
11、进入分区设置,只勾选第一块硬盘进行划分(注意:只选第一块硬盘sda,后面添加的4块硬盘是用来做共享存储的),因测试实验,这里只作基本分区,分别为/boot,/,swap ,实际生产环境不建议这样分区,可以把安装oracle独立分区等。以下为划分boot分区,不需要太大:100m
12、swap,内存的1到2倍,这里划分两倍内存:2048M
13、根分区,第一块硬盘剩下的空间都给它了,18G多,安装linux系统,oracle软件足够了
19、完成后分区如下,其它四块硬盘不动
20、下一步,进入boot loader 选择,默认即可
生产环境建议设置boot loader password
21、设置ip地址及主机名,建议先设置好,当然安装完成也可以进入系统进行修改设置,本人设置如下:eth0 :192.168.0.21 255.255.255.0 eth1:10.10.17.221 255.255.255.0 IPV6关闭,主机名为rac1,网关:192.168.0.1 ,eth0与实验真实机器为同一网段。
22、选择时区
23、root密码设置
24、软件包安装,这里建议都选 上
以下的几个软件包必选:
25、选择中文支持:
26、点击next
27、进行安装,这就得等吧,安装完成大概20分钟:
28、安装过程中只有第一块硬盘在运行:
29、终于安装完成,点击reboot 重启:
30、重启完成进入配置向导:
31、next
32、防火墙,为实验方便,disabled 关闭掉。
33、selinux 也是一样,关闭掉
34、kdump 也不需要打开
35、时间日期设置
36、软件自动升级设置,这里还是算了
37、选择no thanks
38、这里就不创建用户了,点击继续
39、next
40、完成
41、再次重启系统:
42、重启完成后进行系统界面,到此基本完成第一个节点rac1 ,linux系统安装。
四、配置linux环境:
以下操作如非特别注明,均为root用户,为了方便建议通过 ssh远程操作,ssh默认端口为22
1、避免安装rac过程出现类似因缺少相关软件包而带来的麻烦,建议首检查linux系统是否已经安装下述软件包:
binutils-2.17.50.0.6-5.el5
compat-libstdc++-296-2.96-138
compat-db-4.2.52-5.1.i386.rpm
control-center-2.16.0-14.el5
gcc-4.1.2-14.el5
gcc-c++-4.1.2-14.el5
glibc-2.5-18
glibc-common-2.5-18
libstdc++-4.1.2-14.el5
libstdc++-devel-4.1.2-14.el5
make-3.81-1.1
sysstat-7.0.0-3.el5.i386.rpm
setarch-2.0-1.1
以下为逐一检查:
把没有安装的包安装上,加载linux安装光盘,以上软件包均可以安装光盘找到。
安装缺少的包:
同时建议安装上下述软件包,后面也需要安装的:
2、安装完成后,请先关闭虚拟机,并更改虚拟机相关配置文件,打开.vmx 文件,如下
添加以下内容:
disk.locking = "false"
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.DataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
scsi1:1.deviceType = "disk"
scsi1:2.deviceType = "disk"
scsi1:3.deviceType = "disk"
scsi1:4.deviceType = "disk"
添加完成后保存并关闭。
3、重新启动虚拟机,进入linux系统,编辑/etc/hosts 文件
[root@rac1]#vi /etc/hosts
添加以下内容:
192.168.0.21 rac1
192.168.0.22 rac2
192.168.0.23 rac1-vip
192.168.0.24 rac2-vip
10.10.17.221 rac1-priv
10.10.17.222 rac2-priv
注:192.168.0.22 ,10.10.17.222 为节点2 的IP,192.168.0.23,24为指定定的虚拟IP,供CRS使用,不需要用到真实网卡。
4、创建组oinstall,dba 用户oracle
注:如果是非虚拟机安装,要注意记录下用户和组ID,在其它机器上创建同名组时,务必确认组ID和用户ID与此相同。(以上引自君三思的文档,由于没有真实环境,还没考证,有点惭愧)
5、修改oracle用户的初始化参数文件
[root@rac1~]vi /home/oracle/.bash_profile
增加以下内容:
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/opt/ora10g
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=RACDB1
export ORACLE_TERM=xterm
export PATH=/usr/sbin:$PATH
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin/
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
ulimit -u 16384 -n 65536
umask 022
:wq 保存退出
6、创建/opt/ora10g 目录,并修改其权限属性:
由于该目录主要由oracle用户操作,因此我们将其所有者改为oracle
7、配置内核参数:
增加以下内容:
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
提示,上述参数中通常只有一项需要更改,即kernel.shmmax,该参数推荐设定为物理内存的一半,由于 安装crs的时候要求是内存至少512M。
并运行sysctl -p 让设置生效如下:
8、提高oracle用户的shell限制,设置oracle使用的文件数权限:
[root@rac1~]vi /etc/security/limits.conf
增加以下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
9、修改安全限制
[root@rac1~]vi /etc/pam.d/login
增加以下内容:
session required /lib/security/pam_limits.so
10、配置Hangcheck计时器
[root@rac1~]vi /etc/rc.local
增加以下:
modprobe hangcheck-timer hangcheck-tick=30 hangcheck_margin=180
10、磁盘分区
首先来查看一下未分区前的情况,fidesk -l
使用fdisk /dev/sdb 进行分区,依次操作如下
分别输入:p,1,回车,回车,w (注:w表示保存分区表操作)
接着分别重复上述操作,对sdc,sdd,sde进行相应分区,这里就不一一列出了,以下是分区完成后的效果:
11、安装oracleasmlib程序包:
所需的程序包可以到这里下载:
https://oss.oracle.com/projects/compat-oracle/files/RedHat/
http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html
注意一定要与操作系统版本相符,如果你是跟本人用的一样版本rhel 5.1 那就到这里下吧,都给你集齐了。
下载地址:http://down.51cto.com/data/678366
接下来就是通过共享,把上述软件包拷贝到linux里面:
加载命令:mount -o username=administrator //192.168.0.20/mysoft /mnt
运行上述命令后会要求输入相应的密码,然后加载共享mysoft到/mnt里,操作过程如下:
安装过程中如提示缺少其它包都可以在linux安装光盘找到。前文提到安装的几个软件包这里就需用到了。另,雷宇老师的此步骤介绍得比较详细,很值得参考。
12、配置裸设备
由于 RHEL5中取消了rawdevices,如果不想将映射命令放到rc.local中的话,我们就需要将其配置到/etc/udev/rules.d/ 文件夹中
修改以下文件
[root@rac1 ~]# vi /etc/udev/rules.d/60-raw.rules
增加以下内容:
ACTION=="add", KERNEL=="/dev/sdb1",RUN+="/bin/raw /dev/raw/raw1 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="17",RUN+="/bin/raw /dev/raw/raw1 %M %m"
ACTION=="add", KERNEL=="/dev/sdc1",RUN+="/bin/raw /dev/raw/raw2 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="33",RUN+="/bin/raw /dev/raw/raw2 %M %m"
ACTION=="add", KERNEL=="/dev/sdd1",RUN+="/bin/raw /dev/raw/raw3 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="49",RUN+="/bin/raw /dev/raw/raw3 %M %m"
ACTION=="add", KERNEL=="/dev/sde1",RUN+="/bin/raw /dev/raw/raw4 %N"
ACTION=="add", ENV{MAJOR}=="8",ENV{MINOR}=="65",RUN+="/bin/raw /dev/raw/raw4 %M %m"
KERNEL=="raw[1-4]", OWNER="oracle", GROUP="oinstall", MODE="640"
:wq 保存退出
注:以上需根据实际情况来配置
13、重启udev服务,并验证:
到此linux环境配置已经完成。
由于篇幅较长,第一篇到此为止,接下来将继续进行第二台节点创建及clusterware软件安装等
本文转自pimg200551CTO博客,原文链接:http://blog.51cto.com/pimg2005/1130952 ,如需转载请自行联系原作者