资源描述
ORACLE技术文档-
10.1.0.4-RAC-ASM搭建
(v 101109)
作者
刘晓建
审核
分类
ORACLE
子类
RAC
更新时间
2010/11/09
关键字
ORACLE RAC ASM SOLARIS
摘要
针对Sun Solaris 平台下的10.1.0.4版本的RAC+ASM搭建
主要适用环境
Sun 5.9 ORACLE 10.1.0.4版本
版本说明
版本号
拟制/修改责任人
拟制/修改日期
修改内容/理由
V101109
刘晓建
2010-11-09
新建
目录
版本说明 2
1. 概述 4
2. 环境搭建过程 4
2.1. 操作系统准备 4
2.1.1. 操作系统环境 4
2.1.2. 系统安装后的主要配置 5
2.1.3. ORACLE 安装前的准备工作(两个节点多要做) 6
2.2. ORACLE Cluster 安装 12
2.2.1. 介质准备 12
2.2.2. 图形界面安装准备 12
2.2.3. 安装过程 12
2.3. ORACLE 软件安装 26
2.3.1. 介质准备 26
2.3.2. 图形界面安装准备 27
2.3.3. 安装过程 27
2.4. ORACLE Cluster 升级 38
2.4.1. 介质准备 38
2.4.2. 图形界面安装准备 39
2.4.3. 安装过程 39
2.5. ORACLE 软件升级 45
2.5.1. 介质准备 45
2.5.2. 图形界面安装准备 46
2.5.3. ORACLE软件的升级到10.1.0.4过程 46
2.6. ORACLE数据库建立 52
3. 参考资料 52
1. 概述
在Sun Solaris 5.9的平台下,搭建一个10.1.0.4 的RAC+ASM环境,主要过程分为操作系统准备、ORACLE cluster 安装、ORACLE的软件安装、ORACLE Cluster的升级、ORACLE软件的升级和数据库的建立等几个主要过程。下面分别进行详细的说明,并对需要注意的地方进行提示。
2. 环境搭建过程
2.1. 操作系统准备
2.1.1. 操作系统环境
主机名称
系统版本
内存
交换分区
网络配置
test1
SunOS 5.9 sun4u sparc SUNW,Sun-Fire-V240
4g
8g
两块网卡:bge0,bge2
test2
SunOS 5.9 sun4u sparc SUNW,Sun-Fire-V240
4g
8g
两块网卡:bge0,bge2
2.1.2. 系统安装后的主要配置
2.1.2.1. 网络配置
1) /etc/hosts #IP和 别名
127.0.0.1 localhost
192.168.227.1 test1 loghost
10.10.3.1 test1-priv
192.168.227.2 test2
10.10.3.2 test2-priv
192.168.227.3 test1-vip
192.168.227.4 test2-vip
2) /etc/hostname.bge0 # (网卡1)
test1
3) /etc/hostname.bge2 #(网卡2)
test1-priv
4) /etc/netmasks #子网掩码
#
# The netmasks file associates Internet Protocol (IP) address
# masks with IP network numbers.
#
# network-number netmask
#
# The term network-number refers to a number obtained from the Internet Network
# Information Center.
#
# Both the network-number and the netmasks are specified in
# "decimal dot" notation, e.g:
#
# 128.32.0.0 255.255.255.0
#
192.168.227.0 255.255.255.0
5) /etc/defaultrouter #默认路由
192.168.227.5
6) Ifconfig –a #验证结果
root@test1 # ifconfig -a
lo0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
bge0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 2
inet 192.168.227.1 netmask ffffff00 broadcast 192.168.227.255
ether 0:3:ba:8b:4c:25
bge0:1: flags=1040843<UP,BROADCAST,RUNNING,MULTICAST,DEPRECATED,IPv4> mtu 1500 index 2
inet 192.168.227.3 netmask ffffff00 broadcast 192.168.227.255
bge2: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4> mtu 1500 index 3
inet 10.10.3.1 netmask ff000000 broadcast 10.255.255.255
ether 0:3:ba:8b:4c:27
2.1.2.2. 共享存储配置
由于本案例采用ASM 来存放数据文件,因为是个测试环境,所以对共享存储方面的需求按照最低要求进行配置,要求共3块盘,两个300M,一个30G,300M的是给Votingdisk 和OCR 用,30G的给ASM磁盘组用。
Votingdisk
300M
/dev/rdsk/c4t600A0B800048B5C4000009C04CB2585Fd0s0
OCR disk
300M
/dev/rdsk/c4t600A0B80004862DC0000098E4CB259E3d0s0
Asm disk
30G
/dev/rdsk/c4t600A0B800048B5C4000009C24CB258C4d0s0
所在主机需要至少1块HBA卡,连接存储光纤交换机,2块千兆网卡连接网络交换机(其中1块配置的地址为对外的服务IP,1块配置节点高速互联的内部IP地址),这些需求都是最低配置。
还需要做的工作是需要在存储交换机进行划ZONE的操作,以便给本案的两个主机进行识别。另外需要在主机上执行如下命令来识别存储上划分的LUN。
配置完成后,通过如下命令进行确认:
ifconfig bge1 plumb #启动HBA 卡
cfgadm –a
luxadm -e port
通过下面的操作,禁用存储的多路径
stmsboot –e
修改文件/kernel/drv/scsi_vhci.conf ,将mpxio-disable="yes"; 修改为mpxio-disable="no"; 然后重启系统
2.1.3. ORACLE 安装前的准备工作(两个节点多要做)
2.1.3.1. 创建组和用户
groupadd -g 500 oinstall
groupadd -g 501 dba
useradd -d /export/home/oracle -u 500 -g oinstall -G dba oracle
2.1.3.2. 创建oracle用户的家目录
cd /export/home
mkdir oracle
chown -R oracle:oinstall oracle
chmod -R 755 oracle
2.1.3.3. 配置ssh
在home 目录下做
$ mkdir .ssh
$ chmod 700 .ssh
$ /usr/bin/ssh-keygen -t rsa
$ /usr/bin/ssh-keygen -t dsa
test1:
touch authorized_keys
ssh test1 cat /export/home/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh test1 cat /export/home/oracle/.ssh/id_dsa.pub >> authorized_keys
ssh test2 cat /export/home/oracle/.ssh/id_rsa.pub >> authorized_keys
ssh test2 cat /export/home/oracle/.ssh/id_dsa.pub >> authorized_keys
scp authorized_keys test2:/export/home/oracle/.ssh/
chmod 600 ~/.ssh/authorized_keys
2.1.3.4. 使SSH 等效性启用
exec /usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add
2.1.3.5. 阻止ORACLE 的OUI由于stty 设置而出现错误
将下面的内容增加到.profile文件中
if [ -t 0 ]; then
stty intr ^C
fi
2.1.3.6. 配置oracle 用户的.profile文件
修改完后的内容如下:
#DISPLAY=192.168.227.8:0.0; export DISPLAY
ORACLE_BASE=/export/home/oracle; export ORACLE_BASE
ORACLE_CRS_HOME=$ORACLE_BASE/product/10.1.0/crs; export ORACLE_CRS_HOME
ORA_CRS_HOME=$ORACLE_BASE/product/10.1.0/crs; export ORA_CRS_HOME
ORACLE_HOME=$ORACLE_BASE/product/10.1.0/10grac; export ORACLE_HOME
ORACLE_SID=test1; export ORACLE_SID
TEMP=/tmp; export TEMP
TMPDIR=/tmp; export TMPDIR
NLS_LANG=AMERICAN_AMERICA.UTF8; export NLS_LANG
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
LIBPATH=$ORACLE_HOME/lib; export LIBPATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:/usr/lib:/usr/ccs/lib:/usr/openwin/lib:/usr/openwin/lib:/usr/ucb; export LD_LIBRARY_PATH
PATH=$ORACLE_HOME/bin:$ORACLE_CRS_HOME/bin:$ORACLE_BASE/product/10.1.0/10grac/OPatch:/usr/lbin:/usr/local/bin:/usr/ccs/bin:/usr/bin:/sbin:/usr/sbin:/usr/openwin/bin:/usr/ucb:/etc:.; export PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/jdk/lib; export CLASSPATH
umask 022
if [ -t 0 ]; then
stty intr ^C
fi
2.1.3.7. 检查硬件需求
本地磁盘空间至少30G,内存至少1G,至少1块HBA卡,2块千兆网卡。
2.1.3.8. 检查网络需求
ssh 测试应该不再需要口令
ssh test1 date
ssh test1-priv date
ssh test2 date
ssh test2-priv
ping test1
ping test1-priv
ping test2
ping test2-priv
2.1.3.9. 检查软件需求
pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibC SUNWlibm SUNWlibms SUNWsprot SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt SUNWsprox SUNWscucm SUNWudlmr SUNWudlm
都需求已经被安装。
gcc 默认在这个版本没有被安装,需要单独安装,安装时还需要libiconv-1.13.1-sol9-sparc-local 这个包提前装
pkgadd -d gcc-3.4.6-sol9-sparc-local #gcc 安装 ,同时还需要libiconv-1.13.1-sol9-sparc-local 这个包
2.1.3.10. 内核参数修改
修改/etc/system
修改后的内容如下,蓝色行为后加的:
*ident "@(#)system 1.18 97/06/27 SMI" /* SVR4 1.5 */
*
* SYSTEM SPECIFICATION FILE
*
* moddir:
*
* Set the search path for modules. This has a format similar to the
* csh path variable. If the module isn't found in the first directory
* it tries the second and so on. The default is /kernel /usr/kernel
*
* Example:
* moddir: /kernel /usr/kernel /other/modules
* root device and root filesystem configuration:
*
* The following may be used to override the defaults provided by
* the boot program:
*
* rootfs: Set the filesystem type of the root.
*
* rootdev: Set the root device. This should be a fully
* expanded physical pathname. The default is the
* physical pathname of the device where the boot
* program resides. The physical pathname is
* highly platform and configuration dependent.
*
* Example:
* rootfs:ufs
* rootdev:/sbus@1,f8000000/esp@0,800000/sd@3,0:a
*
* (Swap device configuration should be specified in /etc/vfstab.)
* exclude:
*
* Modules appearing in the moddir path which are NOT to be loaded,
* even if referenced. Note that `exclude' accepts either a module name,
* or a filename which includes the directory.
*
* Examples:
* exclude: win
* exclude: sys/shmsys
* forceload:
*
* Cause these modules to be loaded at boot time, (just before mounting
* the root filesystem) rather than at first reference. Note that
* forceload expects a filename which includes the directory. Also
* note that loading a module does not necessarily imply that it will
* be installed.
*
* Example:
* forceload: drv/foo
* set:
*
* Set an integer variable in the kernel or a module to a new value.
* This facility should be used with caution. See system(4).
*
* Examples:
*
* To set variables in 'unix':
*
* set nautopush=32
* set maxusers=40
*
* To set a variable named 'debug' in the module named 'test_module'
*
* set test_module:debug = 0x13
set noexec_user_stack=1
set semsys:seminfo_semmni=100
set semsys:seminfo_semmns=1024
set semsys:seminfo_semmsl=256
set semsys:seminfo_semvmx=32767
set shmsys:shminfo_shmmax=4294967295
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=100
set shmsys:shminfo_shmseg=10
set udp:xmit_hiwat=65536
set udp:udp_recv_hiwat=65536
2.1.3.11. 裸设备修改
1) 划分的3个裸设备,需要将8个分区中除2之外的全部删除,然后统一从0使用,使用时第1个0开始的不能使用,从1到最后,使用命令format 进行操作。
2) 划分属主和权限如下:
chown -fRh oracle:dba /dev/rdsk/c4t600A0B800048B5C4000009C04CB2585Fd0s0 # 300m
chown -fRh oracle:dba /dev/rdsk/c4t600A0B800048B5C4000009C24CB258C4d0s0 # 30g
chown -fRh oracle:dba /dev/rdsk/c4t600A0B80004862DC0000098E4CB259E3d0s0 # 300m
chmod 660 /dev/rdsk/c4t600A0B800048B5C4000009C04CB2585Fd0s0 # 300m ocr
chmod 660 /dev/rdsk/c4t600A0B800048B5C4000009C24CB258C4d0s0 # 30g
chmod 660 /dev/rdsk/c4t600A0B80004862DC0000098E4CB259E3d0s0 # 300m voting disk
改原文件的属主和权限 cd /dev/rdsk
chown oracle:dba ../../devices/scsi_vhci/ssd@g600a0b800048b5c4000009c04cb2585f:a,raw
chmod 660 ../../devices/scsi_vhci/ssd@g600a0b800048b5c4000009c04cb2585f:a,raw
chown oracle:dba ../../devices/scsi_vhci/ssd@g600a0b800048b5c4000009c24cb258c4:a,raw
chmod 660 ../../devices/scsi_vhci/ssd@g600a0b800048b5c4000009c24cb258c4:a,raw
chown oracle:dba ../../devices/scsi_vhci/ssd@g600a0b80004862dc0000098e4cb259e3:a,raw
chmod 660 ../../devices/scsi_vhci/ssd@g600a0b80004862dc0000098e4cb259e3:a,raw
3) 对裸设备的dd测试(两个节点同时测试)
dd if=/dev/zero of=/dev/rdsk/c4t600A0B800048B5C4000009C04CB2585Fd0s0 bs=81920 count=1000
dd if=/dev/zero of=/dev/rdsk/c4t600A0B80004862DC0000098E4CB259E3d0s0 bs=81920 count=1000
dd if=/dev/zero of=/dev/rdsk/c4t600A0B800048B5C4000009C24CB258C4d0s0 bs=81920 count=1000
2.2. ORACLE Cluster 安装
2.2.1. 介质准备
需要提前准备这个平台的安装介质,共2个,1个是10.1.0.2的ORACLE cluster,1个是10.1.0.2的软件安装介质,因为这个版本的介质已经无法从ORACLE的官方网站下载,故需要提前准备。
1) ORACLE Cluster 解开后的目录如下:
drwxr-xr-x 2 oracle oinstall 512 Aug 18 2005 cluvfy
drwxr-xr-x 6 oracle oinstall 512 Aug 18 2005 doc
drwxr-xr-x 4 oracle oinstall 512 Aug 18 2005 install
drwxr-xr-x 2 oracle oinstall 512 Aug 18 2005 racpatch
drwxr-xr-x 2 oracle oinstall 512 Aug 18 2005 response
-rwxr-xr-x 1 oracle oinstall 1331 Aug 18 2005 runInstaller
drwxr-xr-x 9 oracle oinstall 2560 Aug 18 2005 stage
drwxr-xr-x 2 oracle oinstall 512 Aug 18 2005 upgrade
-rw-r--r-- 1 oracle oinstall 3529 Aug 6 2005 welcome.html
2.2.2. 图形界面安装准备
由于ORACLE 的OUI 是基于JAVA的图像程序,所以需要配置为可以通过客户端的图形界面程序远程连接到主机,这里的客户端图形界面程序采用XMANAGER.
需要做的工作是在oracle 家目录下的.profile文件里加上DISPLAY项,如下:
DISPLAY=192.168.227.8:0.0; export DISPLAY
这里的192.168.227.8 IP是客户端的IP地址
2.2.3. 安装过程
下面是ORACLE CLUSTER 10.1.0.2的安装过程
以oracle 用户进入对应目录后,执行如下安装程序的脚本
出现欢迎界面
单击Next ,选择Inventory 目录
单击Next ,执行脚本orainstRoot.sh
脚本执行完后,单击Continue 继续,指定文件位置
通常不用修改,单击Next,选择语言
单击Next 继续,集群配置
按照如上设置后,单击Next 继续,选择网卡功能
设置完成后,单击Next继续,选择OCR盘
如上所示,OCR 的位置一定不能指错,否则容易造成盘阵上的数据丢失,单击Next继续,选择votingdisk
设置完voting disk 后,单击Next 继续,按照提示执行脚本
脚本执行完成后,单击Continue ,进入概要窗口
单击Install 进行安装
如上安装过程中,安装结束时会提示在每个节点执行脚本,如下节点test1的执行结果:
如下为节点:test2的执行结果:
两个节点的脚本都执行完成后,单节OK,弹出如下的安装结束窗口,至此ORACLE 集群安装完成。
2.3. ORACLE 软件安装
2.3.1. 介质准备
需要提前准备这个平台的安装介质,10.1.0.2的软件安装介质,因为这个版本的介质已经无法从ORACLE的官方网站下载,故需要提前准备。
ORACLE 软件解开后的目录如下:
bash-2.05$ ls -al
total 26
drwxr-xr-x 6 oracle oinstall 512 Sep 17 2005 .
drwxr-xr-x 3 oracle oinstall 512 Sep 17 2005 ..
drwxr-xr-x 5 oracle oinstall 512 Sep 17 2005 doc
drwxr-xr-x 3 oracle oinstall 512 Sep 17 2005 install
drwxr-xr-x 2 oracle oinstall 512 Sep 17 2005 response
-rwxr-xr-x 1 oracle oinstall 651 Sep 17 2005 runInstaller
drwxr-xr-x 9 oracle oinstall 512 Sep 17 2005 stage
-rwxr-xr-x 1 oracle oinstall 5211 Sep 17 2005 welcome.htm
2.3.2. 图形界面安装准备
由于ORACLE 的OUI 是基于JAVA的图像程序,所以需要配置为可以通过客户端的图形界面程序远程连接到主机,这里的客户端图形界面程序采用XMANAGER.
需要做的工作是在oracle 家目录下的.profile文件里加上DISPLAY项,如下:
DISPLAY=192.168.227.8:0.0; export DISPLAY
这里的192.168.227.8 IP是客户端的IP地址
2.3.3. 安装过程
执行安装程序后,出现如下的安装界面
单击Next 继续
默认即可,单击Next 继续
如上,选择Cluster 安装,并选择所有节点,单击Next 继续
如上选择企业安装,单击Next,继续
验证检查通过后,单击Next 继续
数据库配置,选择不创建开始数据库,单击Next 继续
概要窗口,单击Install,开始安装
安装过程中,结束后,会提示执行脚本,如下:
如上节点1 的执行结果,会报一个JAVA异常信息,不影响使用
节点2的执行 结果,同样会有个JAVA的异常
如上,安装结束窗口,单击Exit 退出安装。
2.4. ORACLE Cluster 升级
2.4.1. 介质准备
需要提前准备这个平台的安装介质,10.1.0.4的软件安装介质:p4163362_10104_SOLARIS64.zip,解开后会生成一个Disk1的目录,因为这个版本的介质已经无法从ORACLE的官方网站下载,故需要提前准备。
ORACLE 软件解开后的目录如下:
bash-2.05$ ls -al
total 1452454
drwxr-xr-x 3 oracle oinstall 512 Oct 15 18:41 .
drwxr-xr-x 10 oracle oinstall 512 Oct 29 12:32 ..
drwxr-xr-x 6 oracle oinstall 512 Nov 2 10:59 Disk1
-r--r--r-- 1 oracle oinstall 128844 Apr 14 2005 README.html
-rw-r--r-- 1 oracle oinstall 743133899 Oct 15 18:39 p4163362_10104_SOLARIS64.zip
2.4.2. 图形界面安装准备
由于ORACLE 的OUI 是基于JAVA的图像程序,所以需要配置为可以通过客户端的图形界面程序远程连接到主机,这里的客户端图形界面程序采用XMANAGER.
需要做的工作是在oracle 家目录下的.profile文件里加上DISPLAY项,如下:
DISPLAY=192.168.227.8:0.0; export DISPLAY
这里的192.168.227.8 IP是客户端的IP地址
2.4.3. 安装过程
进入指定目录,准备安装
执行安装程序,弹出欢迎窗口:
单击Next 继续,选择要升级的CRS,一定得选择对了
单击Next 继续,
默认选择两个节点,单击Next 继续
概要窗口,开始Install
安装过程中,安装结束的末尾,提示执行脚本,如下:
按照提示,执行完成后,单击Exit 退出安装。
2.5. ORACLE 软件升级
2.5.1. 介质准备
需要提前准备这个平台的安装介质,10.1.0.4的软件安装介质:p4163362_10104_SOLARIS64.zip,解开后会生成一个Disk1的目录,因为这个版本的介质已经无法从ORACLE的官方网站下载,故需要提前准备。
ORACLE 软件解开后的目录如下:
bash-2.05$ ls -al
total 1452454
drwxr-xr-x 3 oracle oinstall 512 Oct 15 18:41 .
drwxr-xr-x 10 oracle oinstall 512 Oct 29 12:32 ..
drwxr-xr-x 6 oracle oinstall 512 Nov 2 10:59 Disk1
-r--r--r-- 1 oracle oinstall 128844 Apr 14 2005 README.html
-rw-r--r-- 1 oracle oinstall 743133899 Oct 15 18:39 p4163362_10104_SOLARIS64.zip
2.5.2. 图形界面安装准备
由于ORACLE 的OUI 是基于JAVA的图像程序,所以需要配置为可以通过客户端的图形界面程序远程连接到主机,这里的客户端图形界面程序采用XMANAGER.
需要做的工作是在oracle 家目录下的.profile文件里加上DISPLAY项,如下:
DISPLAY=192.168.227.8:0.0; export DISPLAY
这里的192.168.227.8 IP是客户端的IP地址
2.5.3. ORACLE软件的升级到10.1.0.4过程
执行安装程序,弹出欢迎串口
单击Next,选择要升级的HOME,注意一定要选择正确。
选择正确后,单击Next继续,默认是2个节点
单击Next 继续,概要窗口
单击Install,继续安装
安装过程中,安装到了100%时,会提示执行如下脚本:
脚本执行完,单击OK,弹出结束窗口:
3. 参考资料
ORACLE 官方文档
《技术文档模板》 第 52页 共
展开阅读全文