【原创】RedHat Enterprise 5.6 安装Oracle 10 RAC,并升级至10.0.2.5实录
2013-01-19 09:08
513 查看
高可用数据库安装手册(OracleRAC)
目录
1概述...1
1.1系统拓扑图...1
1.2磁盘阵列需求...1
2数据库服务器规划...1
2.1主机系统规划...1
2.1.1系统软件规划...1
2.1.2操作系统参数规划...2
2.1.3操作系统Patch规划...2
2.1.4本机磁盘规划...3
2.1.5用户组规划...3
2.2系统安装配置规划...3
2.2.1安装Oracle10.2.0.1产品...3
2.2.2安装OracleClusterware产品...3
2.2.3数据库实例...3
3服务器环境...4
3.1配置网络...4
3.2创建Oracle用户...5
3.2.1创建oracle安装目录...6
3.3提高oracle用户限制...6
3.4安装Oracle安装所需软件包...7
3.5配置内核参数...7
3.6修改/etc/hosts.7
3.7配置hangchecktimer内核模块...7
3.8安装oracleasmlib程序包...8
3.9修改redhat-release文件...8
3.10划分存储并创建卷组...8
3.10.1为磁盘创建物理卷标...8
3.10.2划分存储分区...8
3.11在卷组中创建逻辑卷...10
3.11.1在节点1(oradb1)创建逻辑卷...10
3.11.2在节点2(oradb2)激活逻辑卷...13
3.12为存储分区映射裸设备...17
3.13使SSH等效...20
3.14配置OracleASM..22
3.15创建Oracle集群目录...22
4高可用数据库安装...22
4.1安装Oracle集群件...22
4.2安装Oracle数据库10g.36
4.3安装10.2.0.5集群件补丁...42
4.4安装10.2.0.5数据库软件补丁...47
4.5创建数据库监听Listener.53
4.6创建数据库oradb.58
5了解OracleRAC数据库...71
5.1检查数据库集群运行状况...71
5.2数据库TNS.71
5.3检查Oracle集群件的状态...72
5.4列出Oracle实例...72
5.5检查连接...73
5.6检查数据库配置...73
5.7启动和停止应用程序资源...74
5.8启动和停止数据库控制台...74
6如何扩展表空间...76
7如何新增表空间...78
8如何使用扩充存储...79
9OracleRAC常见问题...79
9.1无法通过JDBCURL以负载均衡方式连接数据库...79
1概述
1.1系统拓扑图
1.2磁盘阵列需求
2数据库服务器规划
2.1主机系统规划
2.1.1系统软件规划
说明:两台服务器临时称为A机和B机
2.1.2操作系统参数规划
2.1.3操作系统Patch规划
如果未安装,使用rpm–ivh*.rpm命令安装。
2.1.4本机磁盘规划
2.1.5用户组规划
创建用户oracle和组dba、oinstall
2.2系统安装配置规划
服务器为ORACLE10gforRAC
2.2.1安装Oracle10.2.0.1产品
Oracle主目录Oracle_Base=/oracle并升级10.2.0.5补丁
2.2.2安装OracleClusterware产品
安装OracleClusterware10.2.0.1并升级10.2.0.5补丁
2.2.3数据库实例
²数据库实例名Oracle_SID=ORADB
²使用EnterpriseManager配置数据库。
²数据库组件只选择“EnterpriseManager”资料档案库和标准数据库组件中的OracleJVM,其它都不选。
²归档模式:在没有配置备份软件前,先不要开启归档模式。正式上线后要使用归档模式备份。
²专用服务器模式。
²监听器名称listener,端口1521
²初始化参数:
processes=800
nls_date_format=YYYY-MM-DD
nls_date_language=AMERICAN
²字符集
<characterSet>GBK</characterSet>
<nationalCharacterSet>AL16UTF16</nationalCharacterSet>
²表空间
3服务器环境
主机hosts信息
127.0.0.1localhost
::1localhost6
10.1.3.8oradb1
10.1.3.9oradb1-vip
10.1.3.10oradb2
10.1.3.11oradb2-vip
192.168.1.198oradb1-priv
192.168.1.199oradb2-priv
#groupadddba
#groupaddoinstall
#useraddoracle-goinstall-Gdba,oinstall
#passwdoracle
(1)修改oracle用户环境变量
以root身份在ORADB1上以编辑/home/oracle/.bash_profile文件中加入以下环境变量
exportLANG=en_US
exportEDITOR=vi
exportORACLE_SID=oradb1
exportORACLE_BASE=/oracle
exportORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
exportORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
exportPATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask022
以root身份在ORADB2上编辑/home/oracle/.bash_profile文件中加入以下环境变量
exportLANG=en_US
exportEDITOR=vi
exportORACLE_SID=oradb2
exportORACLE_BASE=/oracle
exportORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
exportORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
exportPATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask022
3.2.1创建oracle安装目录
以root身份分别在两个节点运行以下命令:
#mkdir-p/oracle
#chown-Roracle:oinstall/oracle
#su-oracle
$mkdir-p$ORACLE_HOME
$mkdir-p$ORACRS_HOME
在/etc/security/limits.conf、/etc/pam.d/login和/etc/profile文件中加入如下代码:
/etc/pam.d/login
/etc/profile
libaio-0.3.105-2.i386.rpm
openmotif21-2.1.30-11.RHEL4.6.i386.rpm
以root用户执行下面命令:
rpm–ivh*.rpm
/etc/modprobe.conf
optionshangcheck-timerhangcheck_tick=30hangcheck_margin=180
rpm–ivhoracleasmlib-2.0.2-1.i386.rpm
oracleasm-support-2.1.7-1.el5
oracleasmlib-2.0.4-1.el5
oracleasm-2.6.18-238.el5xen-2.0.5-1.el5
RedHatEnterpriseLinuxServerrelease4(Tikanga)
先以root身份在第一个节点上执行:
[root@oradb1~]#pvcreate/dev/mapper/mpath1
[root@oradb1~]#pvcreate/dev/mapper/mpath2
[root@oradb1~]#pvcreate/dev/mapper/mpath3
[root@oradb1~]#pvcreate/dev/mapper/mpath4
3.10.2划分存储分区
以root身份在第一个节点上执行fdisk进行存储磁盘分区:
[root@oradb1~]#fdisk/dev/mapper/mpath1
为第一块存储创建3个分区,前两个分别为2GB大小,第三个为250G大小,输入:
【n、p、1、回车、+2G、n、p、2、回车、+2G、n、p、3、回车、回车、w】
[root@oradb1~]#fdisk/dev/mapper/mpath2
为第二块存储创建1个分区,为整个磁盘大小【输入n、p、1、回车、回车、w】
[root@oradb1~]#fdisk/dev/mapper/mpath3
为第三块存储创建1个分区,为整个磁盘大小【输入n、p、1、回车、回车、w】
[root@oradb1~]#fdisk/dev/mapper/mpath4
为第四块存储创建1个分区,为整个磁盘大小【输入n、p、1、回车、回车、w】
创建oravg卷组
vgcreateoravg/dev/mapper/mpath1p3/dev/mapper/mpath2p1/dev/mapper/mpath3p1/dev/mapper/mpath4p1
创建完成后执行vgscan
[root@oradb1~]#vgscan
Readingallphysicalvolumes.Thismaytakeawhile...
Foundvolumegroup"oravg"usingmetadatatypelvm2
Foundvolumegroup"VolGroup00"usingmetadatatypelvm2
再执行vgdisplayoravg
[root@oradb1~]#vgdisplayoravg
---Volumegroup---
VGNameoravg
SystemID
Formatlvm2
MetadataAreas4
MetadataSequenceNo80
VGAccessread/write
VGStatusresizable
MAXLV0
CurLV79
OpenLV34
MaxPV0
CurPV4
ActPV4
VGSize1.00TB
PESize4.00MB
TotalPE262875
AllocPE/Size254377/993.66GB
FreePE/Size8498/993.66GB
VGUUIDmVRTxm-Dmwe-3Ces-XoM7-QGKE-x3ch-OtgUIc
则从上图中看出有1TB的存储被划分,磁盘划分完毕后运行fdisk-l列出分区信息:
[root@oradb1~]#fdisk-l
Disk/dev/sda:299.4GB,299439751168bytes
255heads,63sectors/track,36404cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/sda1*11310439183Linux
/dev/sda21436404292310707+8eLinuxLVM
Disk/dev/dm-2:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-2p112441959898+83Linux
/dev/dm-2p2245488195993083Linux
/dev/dm-2p34893363426624524583Linux
Disk/dev/dm-3:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-3p1133634270165073+83Linux
Disk/dev/dm-4:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-4p1133634270165073+83Linux
Disk/dev/dm-5:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-5p1133634270165073+83Linux
提示:盘阵上目前共1000G空间,共分为6个分区。
以root身份在第一个节点上执行lvcreate进行逻辑卷划分:
lvcreate-nsystem-L5Goravg
lvcreate-nsysaux-L5Goravg
lvcreate-nundotbs1-L5Goravg
lvcreate-nundotbs2-L5Goravg
lvcreate-nusers-L2Goravg
lvcreate-ntemp01-L2Goravg
lvcreate-ntemp02-L2Goravg
lvcreate-ncontrol1-L2Goravg
lvcreate-ncontrol2-L2Goravg
lvcreate-ncontrol3-L2Goravg
lvcreate-nspfile-L100Moravg
lvcreate-nredo1_1-L200Moravg
lvcreate-nredo1_2-L200Moravg
lvcreate-nredo1_3-L200Moravg
lvcreate-nredo1_4-L200Moravg
lvcreate-nredo2_1-L200Moravg
lvcreate-nredo2_2-L200Moravg
lvcreate-nredo2_3-L200Moravg
lvcreate-nredo2_4-L200Moravg
lvcreate-ndata_10g_01-L10Goravg
lvcreate-ndata_10g_02-L10Goravg
lvcreate-ndata_10g_03-L10Goravg
lvcreate-ndata_10g_04-L10Goravg
lvcreate-ndata_10g_05-L10Goravg
lvcreate-ndata_10g_06-L10Goravg
lvcreate-ndata_10g_07-L10Goravg
lvcreate-ndata_10g_08-L10Goravg
lvcreate-ndata_10g_09-L10Goravg
lvcreate-ndata_10g_10-L10Goravg
lvcreate-ndata_10g_11-L10Goravg
lvcreate-ndata_10g_12-L10Goravg
lvcreate-ndata_10g_13-L10Goravg
lvcreate-ndata_10g_14-L10Goravg
lvcreate-ndata_10g_15-L10Goravg
lvcreate-ndata_10g_16-L10Goravg
lvcreate-ndata_10g_17-L10Goravg
lvcreate-ndata_10g_18-L10Goravg
lvcreate-ndata_10g_19-L10Goravg
lvcreate-ndata_10g_20-L10Goravg
lvcreate-ndata_20g_01-L20Goravg
lvcreate-ndata_20g_02-L20Goravg
lvcreate-ndata_20g_03-L20Goravg
lvcreate-ndata_20g_04-L20Goravg
lvcreate-ndata_20g_05-L20Goravg
lvcreate-ndata_20g_06-L20Goravg
lvcreate-ndata_20g_07-L20Goravg
lvcreate-ndata_20g_08-L20Goravg
lvcreate-ndata_20g_09-L20Goravg
lvcreate-ndata_20g_10-L20Goravg
lvcreate-ndata_20g_11-L20Goravg
lvcreate-ndata_20g_12-L20Goravg
lvcreate-ndata_20g_13-L20Goravg
lvcreate-ndata_20g_14-L20Goravg
lvcreate-ndata_20g_15-L20Goravg
lvcreate-ndata_20g_16-L20Goravg
lvcreate-ndata_20g_17-L20Goravg
lvcreate-ndata_20g_18-L20Goravg
lvcreate-ndata_20g_19-L20Goravg
lvcreate-ndata_20g_20-L20Goravg
lvcreate-ndata_20g_21-L20Goravg
lvcreate-ndata_20g_22-L20Goravg
lvcreate-ndata_20g_23-L20Goravg
lvcreate-ndata_20g_24-L20Goravg
lvcreate-ndata_20g_25-L20Goravg
lvcreate-ndata_20g_26-L20Goravg
lvcreate-ndata_20g_27-L20Goravg
lvcreate-ndata_20g_28-L20Goravg
lvcreate-ndata_20g_29-L20Goravg
lvcreate-ndata_20g_30-L20Goravg
lvcreate-ndata_20g_31-L20Goravg
lvcreate-ndata_20g_32-L20Goravg
lvcreate-ndata_20g_33-L20Goravg
lvcreate-ndata_20g_34-L20Goravg
lvcreate-ndata_20g_35-L20Goravg
lvcreate-ndata_20g_36-L20Goravg
lvcreate-ndata_tmp01-L10Goravg
lvcreate-ndata_tmp02-L10Goravg
lvcreate-ndata_tmp03-L10Goravg
lvcreate-ndata_tmp04-L10Goravg
创建完成后,执行lvscan,查看lv的状态
[root@oradb1~]#lvscan
ACTIVE'/dev/oravg/system'[5.00GB]inherit
ACTIVE'/dev/oravg/sysaux'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs1'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs2'[5.00GB]inherit
ACTIVE'/dev/oravg/users'[2.00GB]inherit
ACTIVE'/dev/oravg/temp01'[2.00GB]inherit
ACTIVE'/dev/oravg/temp02'[2.00GB]inherit
ACTIVE'/dev/oravg/control1'[2.00GB]inherit
ACTIVE'/dev/oravg/control2'[2.00GB]inherit
ACTIVE'/dev/oravg/control3'[2.00GB]inherit
ACTIVE'/dev/oravg/spfile'[100.00MB]inherit
ACTIVE'/dev/oravg/redo1_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_4'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_4'[200.00MB]inherit
ACTIVE'/dev/oravg/data_10g_01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_05'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_06'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_07'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_08'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_09'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_10'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_11'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_12'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_13'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_14'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_15'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_16'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_17'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_18'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_19'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_20'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_01'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_02'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_03'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_04'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_05'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_06'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_07'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_08'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_09'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_10'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_11'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_12'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_13'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_14'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_15'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_16'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_17'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_18'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_19'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_20'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_21'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_22'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_23'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_24'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_25'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_26'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_27'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_28'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_29'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_30'[20.00GB]inherit
ACTIVE'/dev/oravg/data_tmp01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_31'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_32'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_33'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_34'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_35'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_36'[20.00GB]inherit
3.11.2在节点2(oradb2)激活逻辑卷
以root身份在第二个节点上执行lvchange进行逻辑卷激活:
lvchange-ay/dev/oravg/system
lvchange-ay/dev/oravg/sysaux
lvchange-ay/dev/oravg/undotbs1
lvchange-ay/dev/oravg/undotbs2
lvchange-ay/dev/oravg/users
lvchange-ay/dev/oravg/temp01
lvchange-ay/dev/oravg/temp02
lvchange-ay/dev/oravg/control1
lvchange-ay/dev/oravg/control2
lvchange-ay/dev/oravg/control3
lvchange-ay/dev/oravg/spfile
lvchange-ay/dev/oravg/redo1_1
lvchange-ay/dev/oravg/redo1_2
lvchange-ay/dev/oravg/redo1_3
lvchange-ay/dev/oravg/redo1_4
lvchange-ay/dev/oravg/redo2_1
lvchange-ay/dev/oravg/redo2_2
lvchange-ay/dev/oravg/redo2_3
lvchange-ay/dev/oravg/redo2_4
lvchange-ay/dev/oravg/data_10g_01
lvchange-ay/dev/oravg/data_10g_02
lvchange-ay/dev/oravg/data_10g_03
lvchange-ay/dev/oravg/data_10g_04
lvchange-ay/dev/oravg/data_10g_05
lvchange-ay/dev/oravg/data_10g_06
lvchange-ay/dev/oravg/data_10g_07
lvchange-ay/dev/oravg/data_10g_08
lvchange-ay/dev/oravg/data_10g_09
lvchange-ay/dev/oravg/data_10g_10
lvchange-ay/dev/oravg/data_10g_11
lvchange-ay/dev/oravg/data_10g_12
lvchange-ay/dev/oravg/data_10g_13
lvchange-ay/dev/oravg/data_10g_14
lvchange-ay/dev/oravg/data_10g_15
lvchange-ay/dev/oravg/data_10g_16
lvchange-ay/dev/oravg/data_10g_17
lvchange-ay/dev/oravg/data_10g_18
lvchange-ay/dev/oravg/data_10g_19
lvchange-ay/dev/oravg/data_10g_20
lvchange-ay/dev/oravg/data_20g_01
lvchange-ay/dev/oravg/data_20g_02
lvchange-ay/dev/oravg/data_20g_03
lvchange-ay/dev/oravg/data_20g_04
lvchange-ay/dev/oravg/data_20g_05
lvchange-ay/dev/oravg/data_20g_06
lvchange-ay/dev/oravg/data_20g_07
lvchange-ay/dev/oravg/data_20g_08
lvchange-ay/dev/oravg/data_20g_09
lvchange-ay/dev/oravg/data_20g_10
lvchange-ay/dev/oravg/data_20g_11
lvchange-ay/dev/oravg/data_20g_12
lvchange-ay/dev/oravg/data_20g_13
lvchange-ay/dev/oravg/data_20g_14
lvchange-ay/dev/oravg/data_20g_15
lvchange-ay/dev/oravg/data_20g_16
lvchange-ay/dev/oravg/data_20g_17
lvchange-ay/dev/oravg/data_20g_18
lvchange-ay/dev/oravg/data_20g_19
lvchange-ay/dev/oravg/data_20g_20
lvchange-ay/dev/oravg/data_20g_21
lvchange-ay/dev/oravg/data_20g_22
lvchange-ay/dev/oravg/data_20g_23
lvchange-ay/dev/oravg/data_20g_24
lvchange-ay/dev/oravg/data_20g_25
lvchange-ay/dev/oravg/data_20g_26
lvchange-ay/dev/oravg/data_20g_27
lvchange-ay/dev/oravg/data_20g_28
lvchange-ay/dev/oravg/data_20g_29
lvchange-ay/dev/oravg/data_20g_30
lvchange-ay/dev/oravg/data_tmp01
lvchange-ay/dev/oravg/data_tmp02
lvchange-ay/dev/oravg/data_tmp03
lvchange-ay/dev/oravg/data_tmp04
lvchange-ay/dev/oravg/data_20g_31
lvchange-ay/dev/oravg/data_20g_32
lvchange-ay/dev/oravg/data_20g_33
lvchange-ay/dev/oravg/data_20g_34
lvchange-ay/dev/oravg/data_20g_35
lvchange-ay/dev/oravg/data_20g_36
激活完成后,执行lvscan的结果应该跟节点1一致:
[root@oradb2~]#lvscan
ACTIVE'/dev/oravg/system'[5.00GB]inherit
ACTIVE'/dev/oravg/sysaux'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs1'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs2'[5.00GB]inherit
ACTIVE'/dev/oravg/users'[2.00GB]inherit
ACTIVE'/dev/oravg/temp01'[2.00GB]inherit
ACTIVE'/dev/oravg/temp02'[2.00GB]inherit
ACTIVE'/dev/oravg/control1'[2.00GB]inherit
ACTIVE'/dev/oravg/control2'[2.00GB]inherit
ACTIVE'/dev/oravg/control3'[2.00GB]inherit
ACTIVE'/dev/oravg/spfile'[100.00MB]inherit
ACTIVE'/dev/oravg/redo1_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_4'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_4'[200.00MB]inherit
ACTIVE'/dev/oravg/data_10g_01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_05'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_06'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_07'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_08'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_09'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_10'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_11'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_12'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_13'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_14'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_15'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_16'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_17'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_18'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_19'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_20'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_01'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_02'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_03'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_04'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_05'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_06'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_07'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_08'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_09'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_10'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_11'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_12'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_13'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_14'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_15'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_16'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_17'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_18'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_19'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_20'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_21'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_22'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_23'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_24'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_25'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_26'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_27'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_28'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_29'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_30'[20.00GB]inherit
ACTIVE'/dev/oravg/data_tmp01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_31'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_32'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_33'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_34'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_35'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_36'[20.00GB]inherit
/etc/sysconfig/rawdevice
/dev/raw/raw1/dev/mapper/mpath1p1
/dev/raw/raw2/dev/mapper/mpath1p2
######################################
/dev/raw/raw3/dev/oravg/system
/dev/raw/raw4/dev/oravg/sysaux
/dev/raw/raw5/dev/oravg/undotbs1
/dev/raw/raw6/dev/oravg/undotbs2
/dev/raw/raw7/dev/oravg/users
/dev/raw/raw8/dev/oravg/temp01
/dev/raw/raw9/dev/oravg/temp02
/dev/raw/raw10/dev/oravg/control1
/dev/raw/raw11/dev/oravg/control2
/dev/raw/raw12/dev/oravg/control3
/dev/raw/raw13/dev/oravg/spfile
/dev/raw/raw14/dev/oravg/redo1_1
/dev/raw/raw15/dev/oravg/redo1_2
/dev/raw/raw16/dev/oravg/redo1_3
/dev/raw/raw17/dev/oravg/redo1_4
/dev/raw/raw18/dev/oravg/redo2_1
/dev/raw/raw19/dev/oravg/redo2_2
/dev/raw/raw20/dev/oravg/redo2_3
/dev/raw/raw21/dev/oravg/redo2_4
/dev/raw/raw22/dev/oravg/data_10g_01
/dev/raw/raw23/dev/oravg/data_10g_02
/dev/raw/raw24/dev/oravg/data_10g_03
/dev/raw/raw25/dev/oravg/data_10g_04
/dev/raw/raw26/dev/oravg/data_10g_05
/dev/raw/raw27/dev/oravg/data_10g_06
/dev/raw/raw28/dev/oravg/data_10g_07
/dev/raw/raw29/dev/oravg/data_10g_08
/dev/raw/raw30/dev/oravg/data_10g_09
/dev/raw/raw31/dev/oravg/data_10g_10
/dev/raw/raw32/dev/oravg/data_10g_11
/dev/raw/raw33/dev/oravg/data_10g_12
/dev/raw/raw34/dev/oravg/data_10g_13
/dev/raw/raw35/dev/oravg/data_10g_14
/dev/raw/raw36/dev/oravg/data_10g_15
/dev/raw/raw37/dev/oravg/data_10g_16
/dev/raw/raw38/dev/oravg/data_10g_17
/dev/raw/raw39/dev/oravg/data_10g_18
/dev/raw/raw40/dev/oravg/data_10g_19
/dev/raw/raw41/dev/oravg/data_10g_20
/dev/raw/raw42/dev/oravg/data_20g_01
/dev/raw/raw43/dev/oravg/data_20g_02
/dev/raw/raw44/dev/oravg/data_20g_03
/dev/raw/raw45/dev/oravg/data_20g_04
/dev/raw/raw46/dev/oravg/data_20g_05
/dev/raw/raw47/dev/oravg/data_20g_06
/dev/raw/raw48/dev/oravg/data_20g_07
/dev/raw/raw49/dev/oravg/data_20g_08
/dev/raw/raw50/dev/oravg/data_20g_09
/dev/raw/raw51/dev/oravg/data_20g_10
/dev/raw/raw52/dev/oravg/data_20g_11
/dev/raw/raw53/dev/oravg/data_20g_12
/dev/raw/raw54/dev/oravg/data_20g_13
/dev/raw/raw55/dev/oravg/data_20g_14
/dev/raw/raw56/dev/oravg/data_20g_15
/dev/raw/raw57/dev/oravg/data_20g_16
/dev/raw/raw58/dev/oravg/data_20g_17
/dev/raw/raw59/dev/oravg/data_20g_18
/dev/raw/raw60/dev/oravg/data_20g_19
/dev/raw/raw61/dev/oravg/data_20g_20
/dev/raw/raw62/dev/oravg/data_20g_21
/dev/raw/raw63/dev/oravg/data_20g_22
/dev/raw/raw64/dev/oravg/data_20g_23
/dev/raw/raw65/dev/oravg/data_20g_24
/dev/raw/raw66/dev/oravg/data_20g_25
/dev/raw/raw67/dev/oravg/data_20g_26
/dev/raw/raw68/dev/oravg/data_20g_27
/dev/raw/raw69/dev/oravg/data_20g_28
/dev/raw/raw70/dev/oravg/data_20g_29
/dev/raw/raw71/dev/oravg/data_20g_30
/dev/raw/raw72/dev/oravg/data_tmp01
/dev/raw/raw73/dev/oravg/data_tmp02
/dev/raw/raw74/dev/oravg/data_tmp03
/dev/raw/raw75/dev/oravg/data_tmp04
/dev/raw/raw76/dev/oravg/data_20g_31
/dev/raw/raw77/dev/oravg/data_20g_32
/dev/raw/raw78/dev/oravg/data_20g_33
/dev/raw/raw79/dev/oravg/data_20g_34
/dev/raw/raw80/dev/oravg/data_20g_35
/dev/raw/raw81/dev/oravg/data_20g_36
要使映射立即生效,请执行如下命令:
#/sbin/servicerawdevicesrestart
修改/etc/rc.local
chownoracle:oinstall/dev/raw/raw1
chmod640/dev/raw/raw1
chownoracle:dba/dev/raw/raw*
chmod660/dev/raw/raw*
在ORADB1上执行
[oracle@oradb1~]$mkdir~/.ssh
[oracle@oradb1~]$chmod700~/.ssh
[oracle@oradb1~]$ssh-keygen-trsa
Generatingpublic/privatersakeypair.
Enterfileinwhichtosavethekey(/home/oracle/.ssh/id_rsa):
Enterpassphrase(emptyfornopassphrase):
Entersamepassphraseagain:
Youridentificationhasbeensavedin/home/oracle/.ssh/id_rsa.
Yourpublickeyhasbeensavedin/home/oracle/.ssh/id_rsa.pub.
Thekeyfingerprintis:
87:54:4f:92:ba:ed:7b:51:5d:1d:59:5b:f9:44:da:b6oracle@oradb1
在ORADB2上执行
[oracle@oradb2~]$mkdir~/.ssh
[oracle@oradb2~]$chmod700~/.ssh
[oracle@oradb2~]$ssh-keygen-trsa
Generatingpublic/privatersakeypair.
Enterfileinwhichtosavethekey(/home/oracle/.ssh/id_rsa):
Enterpassphrase(emptyfornopassphrase):
Entersamepassphraseagain:
Youridentificationhasbeensavedin/home/oracle/.ssh/id_rsa.
Yourpublickeyhasbeensavedin/home/oracle/.ssh/id_rsa.pub.
Thekeyfingerprintis:
29:5a:35:ac:0a:03:2c:38:22:3c:95:5d:68:aa:56:66oracle@oradb2
在ORADB1上执行
authorized_keys100%17161.7KB/s00:00
在每个节点上测试连接。验证当您再次运行以下命令时,系统是否不提示您输入口令。
sshoradb1date
sshoradb2date
sshoradb1-privdate
sshoradb2-privdate
sshoradb1date
sshoradb2date
sshoradb1-privdate
sshoradb2-privdate
4高可用数据库安装
【解压命令为zcat10201_clusterware_linux_x86_64.cpio.gz|cpio-idmv】,在oradb1上以oracle用户身份执行:
[oracle@oradb1~]$/code/clusterware/runInstaller
欢迎页面:单击Next。
指定Inventory目录和证书:
输入inventory目录的完整路径:/oracle/oraInventory。
指定操作系统组名:oinstall。
指定Home详细内容:
名称:OraCrs10g_home
/oracle/product/10.2.0/crs_1
特定于产品的必要条件检查:
忽略有关物理内存要求的警告。
指定集群配置:单击Add。
公共节点名称:oradb2
专用节点名称:oradb2-priv
虚拟主机名称:oradb2-vip
指定网络接口用法:
接口名称:eth1
子网:10.1.3.0
接口类型:Public
接口名称:eth0
子网:192.168.1.0
接口类型:Private
指定Oracle集群注册表(OCR)位置:选择ExternalRedundancy。
为了简单起见,这里将不镜像OCR。在生产环境中,您可能会考虑复用OCR以实现更高的冗余。
指定OCR位置:/oracle/oracrs/ocr.crs
指定表决磁盘位置:选择ExternalRedundancy。
同样,为了简单起见,我们选择不镜像表决磁盘。
表决磁盘位置:/oracle/oracrs/vote.crs
摘要:单击Install。
当弹出ExecuteConfigurationscripts界面时,先将p4679769_10201_LINUX补丁进行安装,方法为将p4679769_10201_LINUX.zip中的clsfmt.bin文件以oracle身份上传至/oracle/product/10.2.0/crs_1/bin文件夹下【oradb1、oradb2都要做】,覆盖原有的clsfmt.bin;
修改/oracle/product/10.2.0/crs_1/bin/vipca文件:
找到如下内容:
Removethisworkaroundwhenthebug3937317isfixed
arch=`uname-m`
if["$arch"="i686"-o"$arch"="ia64"]
then
LD_ASSUME_KERNEL=2.4.19
exportLD_ASSUME_KERNEL
fi
#Endworkaround
在fi后新添加一行:
unsetLD_ASSUME_KERNEL
修改/oracle/product/10.2.0/crs_1/bin/srvctl文件:
找到如下内容:
LD_ASSUME_KERNEL=2.4.19
exportLD_ASSUME_KERNEL
同样在其后新增加一行:
unsetLD_ASSUME_KERNEL
执行配置脚本:以root用户身份按顺序执行以下脚本(一次执行一个)。在当前脚本完成后,再继续执行下一个脚本。
a)在oradb1上执行/oracle/oraInventory/orainstRoot.sh
b)在oradb2上执行/oracle/oraInventory/orainstRoot.sh
c)在oradb1上执行/oracle/product/10.2.0/crs_1/root.sh
d)在oradb2上执行/oracle/product/10.2.0/crs_1/root.sh
oradb2上的root.sh脚本会自动调用VIPCA,但会因为“Thegiveninterface(s),"eth0"isnotpublic.PublicinterfacesshouldbeusedtoconfigurevirtualIPs.”错误而失败。如果您的公共接口使用不可路由的IP地址(10.1.3.x),则Oracle集群验证实用程序(CVU)将无法找到合适的公共接口。一种解决方法是手动运行VIPCA。
以root身份在第二个节点上执行如下命令
[root@oradb2~]#cd/oracle/product/10.2.0/crs_1/bin
[root@oradb2bin]#./oifcfgiflist
eth0192.168.1.0
virbr0192.168.122.0
eth110.1.3.0
[root@oradb2bin]#./oifcfgsetif-globaleth1/10.1.3.0:public
[root@oradb2bin]#./oifcfgsetif-globaleth0/192.168.1.0:cluster_interconnect
[root@oradb2bin]#./oifcfggetif
eth0255.255.255.0globalcluster_interconnect
eth0192.168.1.0globalcluster_interconnect
eth1255.255.255.192globalpublic
eth110.1.3.0globalpublic
以root用户身份在第二个节点上手动调用VIPCA。
#/oracle/product/10.2.0/crs_1/bin/vipca
欢迎页面:单击Next
网络接口:选择eth0
集群节点的虚拟IP:
节点名称:oradb1
IP别名:oradb1-vip
IP地址:10.1.3.9
子网掩码:255.255.255.0
节点名称:oradb2
IP别名:oradb2-vip
IP地址:10.1.3.11
子网掩码:255.255.255.0
摘要:单击Finish。
配置助手进度对话框:配置完成后,单击OK。
配置结果:单击Exit。
返回到oradb1的执行配置脚本屏幕,然后单击OK。
配置助手:验证所有检查均成功。OUI在最后会执行集群件安装后检查。
安装结束:单击Exit。
[oracle@oradb1~]$/u01/staging/database/runInstaller
欢迎页面:单击Next。
选择安装类型:
选择EnterpriseEdition。
指定Home详细内容:
名称:OraDb10g_home1
路径:/u01/app/oracle/product/10.2.0/db_1
指定硬件集群安装模式:
选择ClusterInstallation。
单击SelectAll。
特定于产品的必要条件检查:
忽略有关物理内存要求的警告。
选择配置选项:
仅安装数据库软件。
摘要:单击Install。
安装执行过程
以root用户身份在oradb1、oradb2上顺序执行脚本,完毕后点击OK
点击Exit退出安装
确认退出
[oracle@oradb1~]$crs_stop-all
或者逐个停止也可以。
[oracle@oradb1~]$/oracle/crs/10.2.0/bin/crs_stop-all
一定要确认服务已经停止,查看crs运行状态。
[oracle@oradb1~]#crs_stat-t
查看两个节点的所有服务stat都是offline
解压升级包
打开终端,切换到oracle用户下,切换目录到升级包目录,如下
[oracle@oradb1~]$su–oracle
[oracle@oradb1~]$cd/code/10205_patch
[oracle@oradb1~]$unzipp6810189_10204_Linux-x86-64.zip#解压操作
在oradb1上切换到升级包目录下,执行升级操作:
[oracle@oradb1~]$cd/code/10205_patch
[oracle@oradb1~]$./runInstaller
注意:如果不能打开图形界面,确认已经用root用户执行过xhost+
系统弹出如下界面在界面选择:OraCrs10g_home,并确认CRS安装路径。
注意:在这里选择名称的下拉箭头,选择crs的安装名称。
单击下一步按钮。
默认继续下一步操作,系统进行升级前检查,检查结果必须都通过,否则不能进行下一步升级。
验证通过后继续下一步操作。
单击“安装”按钮,执行安装操作,系统开始正式安装补丁
补丁安装结束。
根据安装结束提示,使用root用户分别在两个节点上执行如下命令操作。
在节点1(oradb1)上执行操作:
[root@oradb1~]#/oracle/crs/10.2.0/bin/crsctlstopcrs
[root@oradb1~]#/oracle/crs/10.2.0/install/root102.sh
节点1运行完成后上述操作后,在节点2(oradb2)上执行操作:
[root@oradb2~]#/oracle/crs/10.2.0/bin/crsctlstopcrs
[root@oradb2~]#/oracle/crs/10.2.0/install/root102.sh
执行完成后,返回安装界面点击Exit,Yes确认退出安装
升级CRS完成!
执行[oracle@oradb1~]$crs_stop–all
确认服务已经停止
[oracle@oradb1~]$crs_stat-t
查看两个节点的所有服务stat都是offline
在oradb1的升级包目录下:
[oracle@oradb1~]$cd/code/10205_patch
[oracle@oradb1~]$./runInstaller
系统弹出如下界面在界面选择:OraDb10g_home1,并确认Oracle安装路径。如图所示。在此选择默认即可。
取消选中“IwishtoreceivesecurityupdatesviaMyOracleSupport”选项。点击Next
点击Yes,确认不需要Email地址
单击下一步按钮。
默认继续下一步操作,系统进行升级前检查,检查结果必须都通过,否则不能进行下一步升级。
验证通过后继续Install操作。
单击“安装”按钮,执行安装操作后,补丁开始正式安装
安装过程中会提示在两个节点上使用Root用户执行如下root.sh文件
注意:在两个节点上执行覆盖文件之前,建议把/usr/local/bin做一下备份,命令如下:
[root@oradb1~]#cd/usr/local/
[root@oradb1~]#cp–rfbinbin.old
[root@oradb2~]#cd/usr/local/
[root@oradb2~]#cp–rfbinbin.old
分别在两个节点上执行如下命令。提示如图所示。
在节点1上执行如下命令:
[root@oradb1~]#/oracle/product/10.2.0/db_1/root.sh
执行完成后在节点2上执行如下命令:
[root@oradb2~]#/oracle/product/10.2.0/db_1/root.sh
在执行过程需要输入必要信息:
1)输入本地bin目录,选择默认,直接回车即可。
2)提示要覆盖三个文件:先将两个节点上的三个文件都进行备份,然后输入Y直接覆盖。
两个节点都执行完毕后,点击第十步里的“确定OK”。
安装完成,点击Exit并确认(Yes)退出。
点击“Selectallnodes”:
选择Listenerconfiguration
点击Add
保留默认名称Listener点击Next
保留默认值,点击Next
保留默认端口1521,点击Next
选择No,点击Next
点击Next
点击Finish
监听创建完成。
以oracle身份执行命令
touch~/raw_map.txt
vi~/raw_map.txt
输入内容:
###########################
system=/dev/raw/raw3
sysaux=/dev/raw/raw4
undotbs1=/dev/raw/raw5
undotbs2=/dev/raw/raw6
users=/dev/raw/raw7
temp=/dev/raw/raw8
control1=/dev/raw/raw10
control2=/dev/raw/raw11
control3=/dev/raw/raw12
spfile=/dev/raw/raw13
redo1_1=/dev/raw/raw14
redo1_2=/dev/raw/raw15
redo1_3=/dev/raw/raw16
redo1_4=/dev/raw/raw17
redo2_1=/dev/raw/raw18
redo2_2=/dev/raw/raw19
redo2_3=/dev/raw/raw20
redo2_4=/dev/raw/raw21
############################
输入:wq保存并退出
以oracle用户身份在oradb1节点执行dbca命令,打开数据库配置向导,选择默认的“OracleRealApplicationClusterdatabase”选择Next:
选择创建数据库(createadatabase),点击Next
选择selectall,点击Next
数据库模板:
选择GeneralPurpose。
数据库标识:
全局数据库名称:oradb
SID前缀:oradb
管理选项:
选择ConfiguretheDatabasewithEnterpriseManager。
数据库证书:
针对所有帐户使用相同的口令。
存储选项:
选择RawDevices。
选择SpecifyRawDevices映射文件:
选择/home/oracle/raw_map.txt。
去掉数据库闪回选项:
去掉勾选SpecifyflashRecoveryArea。
默认选项,下一步:
添加oradbsrv数据库服务名
对oradb1和oradb2选择Preferred,TAFPolicy选择Basic,点击Next
修改内存占用比率为50%,切换到Sizing标签页:
修改Process值从150到800,点击CharacterSets标签页:
选择字符集为ZHS16GBK-GBK16-bitSimplifiedChinese,点击ConnectionMode标签页:
按默认选择的DedicatedMode,点击ParameterFile标签页:
选择CreateServerparameterfile(SPFILE),点击Next
确认数据库初始化参数(Controlfile、Datafiles、RedoLogGroups)
按默认选项,点击Finish
确认概要,点击OK
开始创建数据库
创建数据库完成
如不需修改password,点击Exit
等待在oradb1、oradb2启动instances后,则数据库创建完成
恭喜,您已经在EnterpriseLinux上成功安装了OracleRAC数据库10g!
5了解OracleRAC数据库
[oracle@oradb1~]$crs_stat-t
NameTypeTargetStateHost
------------------------------------------------------------
ora.oradb.dbapplicationONLINEONLINEoradb2
ora....b1.instapplicationONLINEONLINEoradb1
ora....b2.instapplicationONLINEONLINEoradb2
ora....bsrv.csapplicationONLINEONLINEoradb2
ora....db1.srvapplicationONLINEONLINEoradb1
ora....db2.srvapplicationONLINEONLINEoradb2
ora....B1.lsnrapplicationONLINEONLINEoradb1
ora....db1.gsdapplicationONLINEONLINEoradb1
ora....db1.onsapplicationONLINEONLINEoradb1
ora....db1.vipapplicationONLINEONLINEoradb1
ora....B2.lsnrapplicationONLINEONLINEoradb2
ora....db2.gsdapplicationONLINEONLINEoradb2
ora....db2.onsapplicationONLINEONLINEoradb2
ora....db2.vipapplicationONLINEONLINEoradb2
检查Target和State状态,如果全部为“ONLINE”说明正常,否则状态为“OFFLINE”。
ORADB2=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb2-vip)(PORT=1521))
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=oradb)
(INSTANCE_NAME=oradb2)
)
)
ORADB1=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb1-vip)(PORT=1521))
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=oradb)
(INSTANCE_NAME=oradb1)
)
)
而双机方式连接串应为:
ORADBSRV=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb1-vip)(PORT=1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb2-vip)(PORT=1521))
(LOAD_BALANCE=yes)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=oradbsrv)
(FAILOVER_MODE=
(TYPE=SELECT)
(METHOD=BASIC)
(RETRIES=180)
(DELAY=5)
)
)
)
用户将以上连接串复制到$ORACLE_HOME/network/admin/tnsnames.ora文件中,即可通过TNS连接OracleRAC。
[oracle@oradb1~]$crsctlcheckcrs
CSSappearshealthy
CRSappearshealthy
EVMappearshealthy
[oracle@oradb2~]$crsctlcheckcrs
CSSappearshealthy
CRSappearshealthy
EVMappearshealthy
INSTANCE_NAMEHOST_NAMEARCHIVERTHREAD#STATUS
-------------------------------------------------------
oradb2oradb2STOPPED2OPEN
oradb1oradb1STOPPED1OPEN
sqlplussystem@oradb1
sqlplussystem@oradb2
sqlplussystem@oradb
TotalSystemGlobalArea1610612736bytes
FixedSize2096632bytes
VariableSize520094216bytes
DatabaseBuffers1073741824bytes
RedoBuffers14680064bytes
SQL>selectfile_name,round(bytes/1024/1024,0)||'MB'size_Nfromdba_data_files;
FILE_NAMESIZE_N
------------------------------------
/dev/raw/raw7656MB
/dev/raw/raw4300MB
/dev/raw/raw5150MB
/dev/raw/raw3460MB
/dev/raw/raw666MB
/dev/raw/raw252048MB
/dev/raw/raw228192MB
/dev/raw/raw232048MB
/dev/raw/raw244096MB
/dev/raw/raw264096MB
/dev/raw/raw272048MB
/dev/raw/raw284096MB
/dev/raw/raw292048MB
/dev/raw/raw308129MB
/dev/raw/raw314096MB
/dev/raw/raw328192MB
/dev/raw/raw334096MB
/dev/raw/raw344096MB
/dev/raw/raw352048MB
/dev/raw/raw364096MB
/dev/raw/raw372048MB
/dev/raw/raw381024MB
/dev/raw/raw391024MB
/dev/raw/raw425000MB
/dev/raw/raw401024MB
SQL>selectgroup#,type,member,is_recovery_dest_filefromv$logfileorderbygroup#;
GROUP#TYPEMEMBERIS_RECOVERY_DEST_FILE
-----------------------------------------------------------------------
1ONLINE/dev/raw/raw14NO
2ONLINE/dev/raw/raw15NO
3ONLINE/dev/raw/raw18NO
4ONLINE/dev/raw/raw19NO
启动数据库实例
srvctlstartnodeapps-n<node1hostname>
srvctlstartnodeapps-n<node2hostname>
srvctlstartasm-n<node1hostname>
srvctlstartasm-n<node2hostname>
srvctlstartdatabase-d<databasename>
srvctlstartservice-d<databasename>-s<servicename>
crs_stat-t
停止Oracle实例
srvctlstopservice-d<databasename>-s<servicename>
srvctlstopdatabase-d<databasename>
srvctlstopasm-n<node1hostname>
srvctlstopasm-n<node2hostname>
srvctlstopnodeapps-n<node1hostname>
srvctlstopnodeapps-n<node2hostname>
crs_stat-t
用户也可通过crs_start–all或crs_stop–all启动和停止数据库。
[oracle@oradb1~]$crs_start–all
[oracle@oradb1~]$crs_stop–all
要访问数据库控制台,请打开Web浏览器并输入下面的URL。
https://10.1.3.8:1158/em
以system用户身份登录,并输入您先前在数据库安装期间选择的口令。
²停止控制台
[oracle@oradb1~]$emctlstopdbconsole
TZsettoUS/Eastern
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
http://oradb1:1158/em/console/aboutApplication
StoppingOracleEnterpriseManager10gDatabaseControl...
...Stopped.
²启动控制台
[oracle@oradb1~]$emctlstartdbconsole
TZsettoUS/Eastern
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
http://oradb1:1158/em/console/aboutApplication
StartingOracleEnterpriseManager10gDatabaseControl
...................started.
------------------------------------------------------------------
Logsaregeneratedindirectory
/oracle/product/10.2.0/db_1/oradb1_oradb1/sysman/log
²验证控制台状态
[oracle@oradb1~]$emctlstatusdbconsole
TZsettoPRC
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
http://oradb1:1158/em/console/aboutApplication
OracleEnterpriseManager10gisrunning.
------------------------------------------------------------------
Logsaregeneratedindirectory/oracle/product/10.2.0/db_1/oradb1_oradb1/sysman/log
[oracle@oradb1~]$emctlstatusagent
TZsettoPRC
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
---------------------------------------------------------------
AgentVersion:10.1.0.4.1
OMSVersion:10.1.0.4.0
ProtocolVersion:10.1.0.2.0
AgentHome:/oracle/product/10.2.0/db_1/oradb1_oradb1
Agentbinaries:/oracle/product/10.2.0/db_1
AgentProcessID:15597
ParentProcessID:11690
AgentURL:http://oradb1:3938/emd/main
Startedat:2013-01-1409:18:02
Startedbyuser:oracle
LastReload:2013-01-1409:18:02
Lastsuccessfulupload:2009-01-1811:07:13
TotalMegabytesofXMLfilesuploadedsofar:38.15
NumberofXMLfilespendingupload:2
SizeofXMLfilespendingupload(MB):0.01
Availablediskspaceonuploadfilesystem:93.10%
---------------------------------------------------------------
AgentisRunningandReady
6如何扩展表空间
1)哪些裸设备已经被使用,可以用户sql脚本(selectnamefromv$datafile)来查询得到;
2)参考查看/etc/sysconfig/rawdevices文件内容,即可得到哪个lv映射到了哪个raw设备。如“/dev/raw/raw3/dev/oravg/system”,表示oravg卷组中的system这个lv映射到了/dev/raw/raw3这个裸设备文件;分配表空间时,就参考这个文件中,哪些裸设备还未被使用,就可以将这些裸设备文件,分配给所需的表空间。
注:data开头的lv对应的裸设备可以被加入到表空间中,非data开头的lv不能使用,因为已经作为oracle安装时的默认初始文件已经使用了;lv名称中有tmp的是预留作为tmp表空间扩展使用的,其他都是作为主表空间扩展预留的;
3)对已有的表空间,如果发现空间满时,可以通过新增数据文件方式扩展表空间,方法如下:
lvs用来查看目前系统有哪些lv逻辑卷,当lv的属性为“-wi-a-”时,则该lv所对应的裸设备未被使用,可以做为扩展表空间的数据文件使用:
[root@oradb1~]#lvs
LVVGAttrLSizeOriginSnap%MoveLogCopy%Convert
LogVol00VolGroup00-wi-ao245.41G
LogVol01VolGroup00-wi-ao33.34G
control1oravg-wi-ao2.00G
control2oravg-wi-ao2.00G
control3oravg-wi-ao2.00G
redo1_1oravg-wi-ao200.00M
redo1_2oravg-wi-ao200.00M
redo1_3oravg-wi-a-200.00M
redo1_4oravg-wi-a-200.00M
redo2_1oravg-wi-ao200.00M
redo2_2oravg-wi-ao200.00M
redo2_3oravg-wi-a-200.00M
redo2_4oravg-wi-a-200.00M
spfileoravg-wi-a-100.00M
sysauxoravg-wi-ao5.00G
systemoravg-wi-ao5.00G
temp01oravg-wi-ao2.00G
temp02oravg-wi-a-2.00G
undotbs1oravg-wi-ao5.00G
undotbs2oravg-wi-ao5.00G
usersoravg-wi-ao2.00G
data_10g_01oravg-wi-ao10.00G
data_10g_02oravg-wi-ao10.00G
data_10g_03oravg-wi-ao10.00G
data_10g_04oravg-wi-ao10.00G
data_10g_05oravg-wi-ao10.00G
data_10g_06oravg-wi-ao10.00G
data_10g_07oravg-wi-ao10.00G
data_10g_08oravg-wi-ao10.00G
data_10g_09oravg-wi-ao10.00G
data_10g_10oravg-wi-ao10.00G
data_10g_11oravg-wi-ao10.00G
data_10g_12oravg-wi-ao10.00G
data_10g_13oravg-wi-ao10.00G
data_10g_14oravg-wi-ao10.00G
data_10g_15oravg-wi-ao10.00G
data_10g_16oravg-wi-ao10.00G
data_10g_17oravg-wi-ao10.00G
data_10g_18oravg-wi-ao10.00G
data_10g_19oravg-wi-ao10.00G
data_10g_20oravg-wi-a-10.00G
data_20g_01oravg-wi-ao20.00G
data_20g_02oravg-wi-a-20.00G
data_20g_03oravg-wi-a-20.00G
data_20g_04oravg-wi-a-20.00G
data_20g_05oravg-wi-a-20.00G
data_20g_06oravg-wi-a-20.00G
data_20g_07oravg-wi-a-20.00G
data_20g_08oravg-wi-a-20.00G
data_20g_09oravg-wi-a-20.00G
data_20g_10oravg-wi-a-20.00G
data_20g_11oravg-wi-a-20.00G
data_20g_12oravg-wi-a-20.00G
data_20g_13oravg-wi-a-20.00G
data_20g_14oravg-wi-a-20.00G
data_20g_15oravg-wi-a-20.00G
data_20g_16oravg-wi-a-20.00G
data_20g_17oravg-wi-a-20.00G
data_20g_18oravg-wi-a-20.00G
data_20g_19oravg-wi-a-20.00G
data_20g_20oravg-wi-a-20.00G
data_20g_21oravg-wi-a-20.00G
data_20g_22oravg-wi-a-20.00G
data_20g_23oravg-wi-a-20.00G
data_20g_24oravg-wi-a-20.00G
data_20g_25oravg-wi-a-20.00G
data_20g_26oravg-wi-a-20.00G
data_20g_27oravg-wi-a-20.00G
data_20g_28oravg-wi-a-20.00G
data_20g_29oravg-wi-a-20.00G
data_20g_30oravg-wi-a-20.00G
data_20g_31oravg-wi-a-20.00G
data_20g_32oravg-wi-a-20.00G
data_20g_33oravg-wi-a-20.00G
data_20g_34oravg-wi-a-20.00G
data_20g_35oravg-wi-a-20.00G
data_20g_36oravg-wi-a-20.00G
data_tmp01oravg-wi-ao10.00G
data_tmp02oravg-wi-a-10.00G
data_tmp03oravg-wi-a-10.00G
data_tmp04oravg-wi-a-10.00G
7如何新增表空间
创建表空间示例sql:
CREATETABLESPACEtbs_02
DATAFILE'diskb:tbs_f5.dat'SIZE500KREUSE
AUTOEXTENDONNEXT500KMAXSIZE100M;
这里tbs_02是表空间名称,“diskb:tbs_f5.dat”是数据文件路径,初始大小500k,自增长500k,最大100M,按需调整即可。注意的是,这里的“diskb:tbs_f5.dat”换成第6章节中确定的不在占用的“-wi-a-”状态的裸设备文件/dev/raw/raw[x]即可。
8如何使用扩充存储
如果因为存储空间不够,新增加了新的存储设备,则需经过如下几步,进行扩容,这里假设新增的存储路径为/dev/mapper/mpath9:
1)为存储分配pv,标记为LVM,命令为pvcreate,格式例如:
#pvcreate/dev/mapper/mpath9
2)将新存储增加到已有的vg中,命令为vgextend,格式如下:
#vgextendoravg/dev/mapper/mpath9
3)在oravg中,创建新的或扩展已有的lv,命令为:
①创建新的:
#lvcreate-L5G-nnew_lvoravg
②扩展已有的:
#lvextend–L+20M/dev/oravg/old_lv(扩充逻辑卷old_lv的大小)
记得在B机上,要激活刚新创建的lv,如果是扩展就不需要了。
#lvchange-ay/dev/oravg/new_lv
注:如果是新增的lv,继续新增裸设备映射
4)修改/etc/sysconfig/rawdevices文件,增加内容:
/dev/raw/raw99/dev/datavg/new_lv
5)变更裸设备主属:
chownoracle:dba/dev/raw/raw99
6)变更裸设备权限:
chmod660/dev/raw/raw99
7)接下来这个裸设备就可以作为数据文件,加入到表空间中了,方法参考第6章节。
9OracleRAC常见问题
解决方法:
以管理员账户连接数据库执行以下命令:
sql>altersystemsetlocal_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.3.9)(PORT=1521))'sid='oradb1';
sql>altersystemsetlocal_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.3.11)(PORT=1521))'sid='oradb2';
目录
1概述...1
1.1系统拓扑图...1
1.2磁盘阵列需求...1
2数据库服务器规划...1
2.1主机系统规划...1
2.1.1系统软件规划...1
2.1.2操作系统参数规划...2
2.1.3操作系统Patch规划...2
2.1.4本机磁盘规划...3
2.1.5用户组规划...3
2.2系统安装配置规划...3
2.2.1安装Oracle10.2.0.1产品...3
2.2.2安装OracleClusterware产品...3
2.2.3数据库实例...3
3服务器环境...4
3.1配置网络...4
3.2创建Oracle用户...5
3.2.1创建oracle安装目录...6
3.3提高oracle用户限制...6
3.4安装Oracle安装所需软件包...7
3.5配置内核参数...7
3.6修改/etc/hosts.7
3.7配置hangchecktimer内核模块...7
3.8安装oracleasmlib程序包...8
3.9修改redhat-release文件...8
3.10划分存储并创建卷组...8
3.10.1为磁盘创建物理卷标...8
3.10.2划分存储分区...8
3.11在卷组中创建逻辑卷...10
3.11.1在节点1(oradb1)创建逻辑卷...10
3.11.2在节点2(oradb2)激活逻辑卷...13
3.12为存储分区映射裸设备...17
3.13使SSH等效...20
3.14配置OracleASM..22
3.15创建Oracle集群目录...22
4高可用数据库安装...22
4.1安装Oracle集群件...22
4.2安装Oracle数据库10g.36
4.3安装10.2.0.5集群件补丁...42
4.4安装10.2.0.5数据库软件补丁...47
4.5创建数据库监听Listener.53
4.6创建数据库oradb.58
5了解OracleRAC数据库...71
5.1检查数据库集群运行状况...71
5.2数据库TNS.71
5.3检查Oracle集群件的状态...72
5.4列出Oracle实例...72
5.5检查连接...73
5.6检查数据库配置...73
5.7启动和停止应用程序资源...74
5.8启动和停止数据库控制台...74
6如何扩展表空间...76
7如何新增表空间...78
8如何使用扩充存储...79
9OracleRAC常见问题...79
9.1无法通过JDBCURL以负载均衡方式连接数据库...79
1概述
1.1系统拓扑图
1.2磁盘阵列需求
存储路径 | 分区编号 | 空间大小(GB) | 备注 |
/dev/mpath/mpath1 | mpath1p1 | 2GB | ocr磁盘 |
mpath1p2 | 2GB | vote磁盘 | |
mpath1p3 | 245GB | oravg卷组成员 | |
/dev/mpath/mpath2 | mpath2p1 | 250GB | oravg卷组成员 |
/dev/mpath/mpath3 | mpath3p1 | 250GB | oravg卷组成员 |
/dev/mpath/mpath4 | mpath4p1 | 250GB | oravg卷组成员 |
2.1主机系统规划
2.1.1系统软件规划
说明:两台服务器临时称为A机和B机
项目 | A机与B机 | 备注 |
主机机型 | PCServer | |
阵列类型 | RAID5 | |
CPU | 24 | |
内存(G) | 32 | |
内置盘个数×容量(G) | 1*300G | |
阵列磁盘个数×容量(G) | 4*250G | |
网络要求 | 千兆网卡*2 | |
IP地址 | 4 | |
操作系统 | RedHatEnterpriseLinux5 | |
操作系统补丁 | 5.6 |
参数 | 调整后值 | 备注 |
kernel.shmmni | 4096 | |
kernel.sem | 25032000100128 | |
fs.file-max | 6815744 | |
fs.aio-max-nr | 1048576 | |
net.ipv4.ip_local_port_range | 102465000 | |
net.core.rmem_default | 1048576 | |
net.core.rmem_max | 4194304 | |
net.core.wmem_default | 262144 | |
net.core.wmem_max | 1048576 | |
kernel.msgmnb | 65536 | |
kernel.msgmax | 65536 | |
kernel.shmmax | 68719476736 | |
kernel.shmall | 4294967296 |
编号 | Filesets名称 | 检查方法 |
1 | oracleasm-support-2.1.7-1.el5 oracleasmlib-2.0.4-1.el5 oracleasm-2.6.18-238.el5xen-2.0.5-1.el5 | rpm-qa|greporacleasm |
2.1.4本机磁盘规划
文件系统挂接点 (MountPoint) | 小型机A/小型机B规划 | 备注 |
/ | 238G | 剩余空间划分至“/”节点 |
swap | 32G | |
/boot | 100M |
创建用户oracle和组dba、oinstall
2.2系统安装配置规划
服务器为ORACLE10gforRAC
2.2.1安装Oracle10.2.0.1产品
Oracle主目录Oracle_Base=/oracle并升级10.2.0.5补丁
2.2.2安装OracleClusterware产品
安装OracleClusterware10.2.0.1并升级10.2.0.5补丁
2.2.3数据库实例
²数据库实例名Oracle_SID=ORADB
²使用EnterpriseManager配置数据库。
²数据库组件只选择“EnterpriseManager”资料档案库和标准数据库组件中的OracleJVM,其它都不选。
²归档模式:在没有配置备份软件前,先不要开启归档模式。正式上线后要使用归档模式备份。
²专用服务器模式。
²监听器名称listener,端口1521
²初始化参数:
processes=800
nls_date_format=YYYY-MM-DD
nls_date_language=AMERICAN
²字符集
<characterSet>GBK</characterSet>
<nationalCharacterSet>AL16UTF16</nationalCharacterSet>
²表空间
表空间名称 | 大小 |
system | 5G |
sysaux | 5G |
undotbs1 | 5G |
undotbs2 | 5G |
users | 2G |
temp01 | 2G |
temp02 | 2G |
3.1配置网络
网络配置主机名 | 网卡名称 | IP地址 | 子网掩码 |
oradb1 | eth1 | 10.1.3.8 | 255.255.252.192 |
eth0 | 192.168.1.198 | 255.255.255.0 | |
oradb2 | eth1 | 10.1.3.10 | 255.255.252.192 |
eth0 | 192.168.1.199 | 255.255.255.0 |
127.0.0.1localhost
::1localhost6
10.1.3.8oradb1
10.1.3.9oradb1-vip
10.1.3.10oradb2
10.1.3.11oradb2-vip
192.168.1.198oradb1-priv
192.168.1.199oradb2-priv
3.2创建Oracle用户
以root身份在oradb1和oradb2上分别运行如下命令:
#groupadddba
#groupaddoinstall
#useraddoracle-goinstall-Gdba,oinstall
#passwdoracle
NewPassword:
Re-enternewPassword:
passwd:passwordsuccessfullychangedfororacle
(1)修改oracle用户环境变量
以root身份在ORADB1上以编辑/home/oracle/.bash_profile文件中加入以下环境变量
exportLANG=en_US
exportEDITOR=vi
exportORACLE_SID=oradb1
exportORACLE_BASE=/oracle
exportORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
exportORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
exportPATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask022
以root身份在ORADB2上编辑/home/oracle/.bash_profile文件中加入以下环境变量
exportLANG=en_US
exportEDITOR=vi
exportORACLE_SID=oradb2
exportORACLE_BASE=/oracle
exportORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
exportORA_CRS_HOME=$ORACLE_BASE/product/10.2.0/crs_1
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
exportPATH=$ORACLE_HOME/bin:$ORA_CRS_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
umask022
3.2.1创建oracle安装目录
以root身份分别在两个节点运行以下命令:
#mkdir-p/oracle
#chown-Roracle:oinstall/oracle
#su-oracle
$mkdir-p$ORACLE_HOME
$mkdir-p$ORACRS_HOME
3.3提高oracle用户限制
以root身份分别在两个节点执行以下操作:在/etc/security/limits.conf、/etc/pam.d/login和/etc/profile文件中加入如下代码:
/etc/security/limits.conf
oraclesoftnproc2047
oraclehardnproc16384
oraclesoftnofile1024
oraclehardnofile65536
/etc/pam.d/login
sessionrequiredpam_limits.so
/etc/profile
if[$USER="oracle"];then
if[$SHELL="/bin/ksh"];then
ulimit-p16384
ulimit-n65536
else
ulimit-u16384-n65536
fi
fi
3.4安装Oracle安装所需软件包
以root身份分别在两个节点安装Oracle所需文件:libaio-0.3.105-2.i386.rpm
openmotif21-2.1.30-11.RHEL4.6.i386.rpm
以root用户执行下面命令:
rpm–ivh*.rpm
3.5配置内核参数
以root身份分别在两个节点将下列代码加入/etc/sysctl.conf,要立即生效可执行/sbin/sysctl–p:kernel.shmall=2097152
kernel.shmmax=2147483648
kernel.shmmni=4096
kernel.sem=25032000100128
fs.file-max=65536
net.ipv4.ip_local_port_range=102465000
net.core.rmem_default=1048576
net.core.rmem_max=1048576
net.core.wmem_default=262144
net.core.wmem_max=262144
3.6修改/etc/hosts
以root身份分别在两个节点将以下内容加入到/etc/hosts中:
127.0.0.1localhost
::1localhost6
10.1.3.8oradb1
10.1.3.9oradb1-vip
10.1.3.10oradb2
10.1.3.11oradb2-vip
192.168.1.198oradb1-priv
192.168.1.199oradb2-priv
3.7配置hangchecktimer内核模块
以root身份分别在两个节点/etc/modprobe.conf中加入如下代码,要想立即生效请执行modprobe–vhangcheck-timer/etc/modprobe.conf
optionshangcheck-timerhangcheck_tick=30hangcheck_margin=180
3.8安装oracleasmlib程序包
以root身份分别在两个节点上执行以下操作rpm–ivhoracleasmlib-2.0.2-1.i386.rpm
安装完成后,确认已经安装了如下软件包:
[root@oradb1]#rpm-qa|greporacleasm
oracleasm-support-2.1.7-1.el5
oracleasmlib-2.0.4-1.el5
oracleasm-2.6.18-238.el5xen-2.0.5-1.el5
3.9修改redhat-release文件
/etc/redhat-releaseRedHatEnterpriseLinuxServerrelease4(Tikanga)
3.10划分存储并创建卷组
3.10.1为磁盘创建物理卷标先以root身份在第一个节点上执行:
[root@oradb1~]#pvcreate/dev/mapper/mpath1
[root@oradb1~]#pvcreate/dev/mapper/mpath2
[root@oradb1~]#pvcreate/dev/mapper/mpath3
[root@oradb1~]#pvcreate/dev/mapper/mpath4
3.10.2划分存储分区
以root身份在第一个节点上执行fdisk进行存储磁盘分区:
[root@oradb1~]#fdisk/dev/mapper/mpath1
为第一块存储创建3个分区,前两个分别为2GB大小,第三个为250G大小,输入:
【n、p、1、回车、+2G、n、p、2、回车、+2G、n、p、3、回车、回车、w】
[root@oradb1~]#fdisk/dev/mapper/mpath2
为第二块存储创建1个分区,为整个磁盘大小【输入n、p、1、回车、回车、w】
[root@oradb1~]#fdisk/dev/mapper/mpath3
为第三块存储创建1个分区,为整个磁盘大小【输入n、p、1、回车、回车、w】
[root@oradb1~]#fdisk/dev/mapper/mpath4
为第四块存储创建1个分区,为整个磁盘大小【输入n、p、1、回车、回车、w】
创建oravg卷组
vgcreateoravg/dev/mapper/mpath1p3/dev/mapper/mpath2p1/dev/mapper/mpath3p1/dev/mapper/mpath4p1
创建完成后执行vgscan
[root@oradb1~]#vgscan
Readingallphysicalvolumes.Thismaytakeawhile...
Foundvolumegroup"oravg"usingmetadatatypelvm2
Foundvolumegroup"VolGroup00"usingmetadatatypelvm2
再执行vgdisplayoravg
[root@oradb1~]#vgdisplayoravg
---Volumegroup---
VGNameoravg
SystemID
Formatlvm2
MetadataAreas4
MetadataSequenceNo80
VGAccessread/write
VGStatusresizable
MAXLV0
CurLV79
OpenLV34
MaxPV0
CurPV4
ActPV4
VGSize1.00TB
PESize4.00MB
TotalPE262875
AllocPE/Size254377/993.66GB
FreePE/Size8498/993.66GB
VGUUIDmVRTxm-Dmwe-3Ces-XoM7-QGKE-x3ch-OtgUIc
则从上图中看出有1TB的存储被划分,磁盘划分完毕后运行fdisk-l列出分区信息:
[root@oradb1~]#fdisk-l
Disk/dev/sda:299.4GB,299439751168bytes
255heads,63sectors/track,36404cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/sda1*11310439183Linux
/dev/sda21436404292310707+8eLinuxLVM
Disk/dev/dm-2:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-2p112441959898+83Linux
/dev/dm-2p2245488195993083Linux
/dev/dm-2p34893363426624524583Linux
Disk/dev/dm-3:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-3p1133634270165073+83Linux
Disk/dev/dm-4:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-4p1133634270165073+83Linux
Disk/dev/dm-5:276.6GB,276649082880bytes
255heads,63sectors/track,33634cylinders
Units=cylindersof16065*512=8225280bytes
DeviceBootStartEndBlocksIdSystem
/dev/dm-5p1133634270165073+83Linux
提示:盘阵上目前共1000G空间,共分为6个分区。
3.11在卷组中创建逻辑卷
3.11.1在节点1(oradb1)创建逻辑卷以root身份在第一个节点上执行lvcreate进行逻辑卷划分:
lvcreate-nsystem-L5Goravg
lvcreate-nsysaux-L5Goravg
lvcreate-nundotbs1-L5Goravg
lvcreate-nundotbs2-L5Goravg
lvcreate-nusers-L2Goravg
lvcreate-ntemp01-L2Goravg
lvcreate-ntemp02-L2Goravg
lvcreate-ncontrol1-L2Goravg
lvcreate-ncontrol2-L2Goravg
lvcreate-ncontrol3-L2Goravg
lvcreate-nspfile-L100Moravg
lvcreate-nredo1_1-L200Moravg
lvcreate-nredo1_2-L200Moravg
lvcreate-nredo1_3-L200Moravg
lvcreate-nredo1_4-L200Moravg
lvcreate-nredo2_1-L200Moravg
lvcreate-nredo2_2-L200Moravg
lvcreate-nredo2_3-L200Moravg
lvcreate-nredo2_4-L200Moravg
lvcreate-ndata_10g_01-L10Goravg
lvcreate-ndata_10g_02-L10Goravg
lvcreate-ndata_10g_03-L10Goravg
lvcreate-ndata_10g_04-L10Goravg
lvcreate-ndata_10g_05-L10Goravg
lvcreate-ndata_10g_06-L10Goravg
lvcreate-ndata_10g_07-L10Goravg
lvcreate-ndata_10g_08-L10Goravg
lvcreate-ndata_10g_09-L10Goravg
lvcreate-ndata_10g_10-L10Goravg
lvcreate-ndata_10g_11-L10Goravg
lvcreate-ndata_10g_12-L10Goravg
lvcreate-ndata_10g_13-L10Goravg
lvcreate-ndata_10g_14-L10Goravg
lvcreate-ndata_10g_15-L10Goravg
lvcreate-ndata_10g_16-L10Goravg
lvcreate-ndata_10g_17-L10Goravg
lvcreate-ndata_10g_18-L10Goravg
lvcreate-ndata_10g_19-L10Goravg
lvcreate-ndata_10g_20-L10Goravg
lvcreate-ndata_20g_01-L20Goravg
lvcreate-ndata_20g_02-L20Goravg
lvcreate-ndata_20g_03-L20Goravg
lvcreate-ndata_20g_04-L20Goravg
lvcreate-ndata_20g_05-L20Goravg
lvcreate-ndata_20g_06-L20Goravg
lvcreate-ndata_20g_07-L20Goravg
lvcreate-ndata_20g_08-L20Goravg
lvcreate-ndata_20g_09-L20Goravg
lvcreate-ndata_20g_10-L20Goravg
lvcreate-ndata_20g_11-L20Goravg
lvcreate-ndata_20g_12-L20Goravg
lvcreate-ndata_20g_13-L20Goravg
lvcreate-ndata_20g_14-L20Goravg
lvcreate-ndata_20g_15-L20Goravg
lvcreate-ndata_20g_16-L20Goravg
lvcreate-ndata_20g_17-L20Goravg
lvcreate-ndata_20g_18-L20Goravg
lvcreate-ndata_20g_19-L20Goravg
lvcreate-ndata_20g_20-L20Goravg
lvcreate-ndata_20g_21-L20Goravg
lvcreate-ndata_20g_22-L20Goravg
lvcreate-ndata_20g_23-L20Goravg
lvcreate-ndata_20g_24-L20Goravg
lvcreate-ndata_20g_25-L20Goravg
lvcreate-ndata_20g_26-L20Goravg
lvcreate-ndata_20g_27-L20Goravg
lvcreate-ndata_20g_28-L20Goravg
lvcreate-ndata_20g_29-L20Goravg
lvcreate-ndata_20g_30-L20Goravg
lvcreate-ndata_20g_31-L20Goravg
lvcreate-ndata_20g_32-L20Goravg
lvcreate-ndata_20g_33-L20Goravg
lvcreate-ndata_20g_34-L20Goravg
lvcreate-ndata_20g_35-L20Goravg
lvcreate-ndata_20g_36-L20Goravg
lvcreate-ndata_tmp01-L10Goravg
lvcreate-ndata_tmp02-L10Goravg
lvcreate-ndata_tmp03-L10Goravg
lvcreate-ndata_tmp04-L10Goravg
创建完成后,执行lvscan,查看lv的状态
[root@oradb1~]#lvscan
ACTIVE'/dev/oravg/system'[5.00GB]inherit
ACTIVE'/dev/oravg/sysaux'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs1'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs2'[5.00GB]inherit
ACTIVE'/dev/oravg/users'[2.00GB]inherit
ACTIVE'/dev/oravg/temp01'[2.00GB]inherit
ACTIVE'/dev/oravg/temp02'[2.00GB]inherit
ACTIVE'/dev/oravg/control1'[2.00GB]inherit
ACTIVE'/dev/oravg/control2'[2.00GB]inherit
ACTIVE'/dev/oravg/control3'[2.00GB]inherit
ACTIVE'/dev/oravg/spfile'[100.00MB]inherit
ACTIVE'/dev/oravg/redo1_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_4'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_4'[200.00MB]inherit
ACTIVE'/dev/oravg/data_10g_01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_05'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_06'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_07'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_08'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_09'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_10'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_11'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_12'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_13'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_14'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_15'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_16'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_17'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_18'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_19'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_20'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_01'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_02'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_03'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_04'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_05'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_06'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_07'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_08'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_09'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_10'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_11'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_12'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_13'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_14'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_15'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_16'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_17'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_18'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_19'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_20'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_21'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_22'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_23'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_24'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_25'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_26'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_27'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_28'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_29'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_30'[20.00GB]inherit
ACTIVE'/dev/oravg/data_tmp01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_31'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_32'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_33'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_34'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_35'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_36'[20.00GB]inherit
3.11.2在节点2(oradb2)激活逻辑卷
以root身份在第二个节点上执行lvchange进行逻辑卷激活:
lvchange-ay/dev/oravg/system
lvchange-ay/dev/oravg/sysaux
lvchange-ay/dev/oravg/undotbs1
lvchange-ay/dev/oravg/undotbs2
lvchange-ay/dev/oravg/users
lvchange-ay/dev/oravg/temp01
lvchange-ay/dev/oravg/temp02
lvchange-ay/dev/oravg/control1
lvchange-ay/dev/oravg/control2
lvchange-ay/dev/oravg/control3
lvchange-ay/dev/oravg/spfile
lvchange-ay/dev/oravg/redo1_1
lvchange-ay/dev/oravg/redo1_2
lvchange-ay/dev/oravg/redo1_3
lvchange-ay/dev/oravg/redo1_4
lvchange-ay/dev/oravg/redo2_1
lvchange-ay/dev/oravg/redo2_2
lvchange-ay/dev/oravg/redo2_3
lvchange-ay/dev/oravg/redo2_4
lvchange-ay/dev/oravg/data_10g_01
lvchange-ay/dev/oravg/data_10g_02
lvchange-ay/dev/oravg/data_10g_03
lvchange-ay/dev/oravg/data_10g_04
lvchange-ay/dev/oravg/data_10g_05
lvchange-ay/dev/oravg/data_10g_06
lvchange-ay/dev/oravg/data_10g_07
lvchange-ay/dev/oravg/data_10g_08
lvchange-ay/dev/oravg/data_10g_09
lvchange-ay/dev/oravg/data_10g_10
lvchange-ay/dev/oravg/data_10g_11
lvchange-ay/dev/oravg/data_10g_12
lvchange-ay/dev/oravg/data_10g_13
lvchange-ay/dev/oravg/data_10g_14
lvchange-ay/dev/oravg/data_10g_15
lvchange-ay/dev/oravg/data_10g_16
lvchange-ay/dev/oravg/data_10g_17
lvchange-ay/dev/oravg/data_10g_18
lvchange-ay/dev/oravg/data_10g_19
lvchange-ay/dev/oravg/data_10g_20
lvchange-ay/dev/oravg/data_20g_01
lvchange-ay/dev/oravg/data_20g_02
lvchange-ay/dev/oravg/data_20g_03
lvchange-ay/dev/oravg/data_20g_04
lvchange-ay/dev/oravg/data_20g_05
lvchange-ay/dev/oravg/data_20g_06
lvchange-ay/dev/oravg/data_20g_07
lvchange-ay/dev/oravg/data_20g_08
lvchange-ay/dev/oravg/data_20g_09
lvchange-ay/dev/oravg/data_20g_10
lvchange-ay/dev/oravg/data_20g_11
lvchange-ay/dev/oravg/data_20g_12
lvchange-ay/dev/oravg/data_20g_13
lvchange-ay/dev/oravg/data_20g_14
lvchange-ay/dev/oravg/data_20g_15
lvchange-ay/dev/oravg/data_20g_16
lvchange-ay/dev/oravg/data_20g_17
lvchange-ay/dev/oravg/data_20g_18
lvchange-ay/dev/oravg/data_20g_19
lvchange-ay/dev/oravg/data_20g_20
lvchange-ay/dev/oravg/data_20g_21
lvchange-ay/dev/oravg/data_20g_22
lvchange-ay/dev/oravg/data_20g_23
lvchange-ay/dev/oravg/data_20g_24
lvchange-ay/dev/oravg/data_20g_25
lvchange-ay/dev/oravg/data_20g_26
lvchange-ay/dev/oravg/data_20g_27
lvchange-ay/dev/oravg/data_20g_28
lvchange-ay/dev/oravg/data_20g_29
lvchange-ay/dev/oravg/data_20g_30
lvchange-ay/dev/oravg/data_tmp01
lvchange-ay/dev/oravg/data_tmp02
lvchange-ay/dev/oravg/data_tmp03
lvchange-ay/dev/oravg/data_tmp04
lvchange-ay/dev/oravg/data_20g_31
lvchange-ay/dev/oravg/data_20g_32
lvchange-ay/dev/oravg/data_20g_33
lvchange-ay/dev/oravg/data_20g_34
lvchange-ay/dev/oravg/data_20g_35
lvchange-ay/dev/oravg/data_20g_36
激活完成后,执行lvscan的结果应该跟节点1一致:
[root@oradb2~]#lvscan
ACTIVE'/dev/oravg/system'[5.00GB]inherit
ACTIVE'/dev/oravg/sysaux'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs1'[5.00GB]inherit
ACTIVE'/dev/oravg/undotbs2'[5.00GB]inherit
ACTIVE'/dev/oravg/users'[2.00GB]inherit
ACTIVE'/dev/oravg/temp01'[2.00GB]inherit
ACTIVE'/dev/oravg/temp02'[2.00GB]inherit
ACTIVE'/dev/oravg/control1'[2.00GB]inherit
ACTIVE'/dev/oravg/control2'[2.00GB]inherit
ACTIVE'/dev/oravg/control3'[2.00GB]inherit
ACTIVE'/dev/oravg/spfile'[100.00MB]inherit
ACTIVE'/dev/oravg/redo1_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo1_4'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_1'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_2'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_3'[200.00MB]inherit
ACTIVE'/dev/oravg/redo2_4'[200.00MB]inherit
ACTIVE'/dev/oravg/data_10g_01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_05'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_06'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_07'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_08'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_09'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_10'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_11'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_12'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_13'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_14'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_15'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_16'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_17'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_18'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_19'[10.00GB]inherit
ACTIVE'/dev/oravg/data_10g_20'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_01'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_02'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_03'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_04'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_05'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_06'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_07'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_08'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_09'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_10'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_11'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_12'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_13'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_14'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_15'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_16'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_17'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_18'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_19'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_20'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_21'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_22'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_23'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_24'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_25'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_26'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_27'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_28'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_29'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_30'[20.00GB]inherit
ACTIVE'/dev/oravg/data_tmp01'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp02'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp03'[10.00GB]inherit
ACTIVE'/dev/oravg/data_tmp04'[10.00GB]inherit
ACTIVE'/dev/oravg/data_20g_31'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_32'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_33'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_34'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_35'[20.00GB]inherit
ACTIVE'/dev/oravg/data_20g_36'[20.00GB]inherit
3.12为存储分区映射裸设备
以root身份分别在两个节点上将下行添加到/etc/sysconfig/rawdevice中:/etc/sysconfig/rawdevice
/dev/raw/raw1/dev/mapper/mpath1p1
/dev/raw/raw2/dev/mapper/mpath1p2
######################################
/dev/raw/raw3/dev/oravg/system
/dev/raw/raw4/dev/oravg/sysaux
/dev/raw/raw5/dev/oravg/undotbs1
/dev/raw/raw6/dev/oravg/undotbs2
/dev/raw/raw7/dev/oravg/users
/dev/raw/raw8/dev/oravg/temp01
/dev/raw/raw9/dev/oravg/temp02
/dev/raw/raw10/dev/oravg/control1
/dev/raw/raw11/dev/oravg/control2
/dev/raw/raw12/dev/oravg/control3
/dev/raw/raw13/dev/oravg/spfile
/dev/raw/raw14/dev/oravg/redo1_1
/dev/raw/raw15/dev/oravg/redo1_2
/dev/raw/raw16/dev/oravg/redo1_3
/dev/raw/raw17/dev/oravg/redo1_4
/dev/raw/raw18/dev/oravg/redo2_1
/dev/raw/raw19/dev/oravg/redo2_2
/dev/raw/raw20/dev/oravg/redo2_3
/dev/raw/raw21/dev/oravg/redo2_4
/dev/raw/raw22/dev/oravg/data_10g_01
/dev/raw/raw23/dev/oravg/data_10g_02
/dev/raw/raw24/dev/oravg/data_10g_03
/dev/raw/raw25/dev/oravg/data_10g_04
/dev/raw/raw26/dev/oravg/data_10g_05
/dev/raw/raw27/dev/oravg/data_10g_06
/dev/raw/raw28/dev/oravg/data_10g_07
/dev/raw/raw29/dev/oravg/data_10g_08
/dev/raw/raw30/dev/oravg/data_10g_09
/dev/raw/raw31/dev/oravg/data_10g_10
/dev/raw/raw32/dev/oravg/data_10g_11
/dev/raw/raw33/dev/oravg/data_10g_12
/dev/raw/raw34/dev/oravg/data_10g_13
/dev/raw/raw35/dev/oravg/data_10g_14
/dev/raw/raw36/dev/oravg/data_10g_15
/dev/raw/raw37/dev/oravg/data_10g_16
/dev/raw/raw38/dev/oravg/data_10g_17
/dev/raw/raw39/dev/oravg/data_10g_18
/dev/raw/raw40/dev/oravg/data_10g_19
/dev/raw/raw41/dev/oravg/data_10g_20
/dev/raw/raw42/dev/oravg/data_20g_01
/dev/raw/raw43/dev/oravg/data_20g_02
/dev/raw/raw44/dev/oravg/data_20g_03
/dev/raw/raw45/dev/oravg/data_20g_04
/dev/raw/raw46/dev/oravg/data_20g_05
/dev/raw/raw47/dev/oravg/data_20g_06
/dev/raw/raw48/dev/oravg/data_20g_07
/dev/raw/raw49/dev/oravg/data_20g_08
/dev/raw/raw50/dev/oravg/data_20g_09
/dev/raw/raw51/dev/oravg/data_20g_10
/dev/raw/raw52/dev/oravg/data_20g_11
/dev/raw/raw53/dev/oravg/data_20g_12
/dev/raw/raw54/dev/oravg/data_20g_13
/dev/raw/raw55/dev/oravg/data_20g_14
/dev/raw/raw56/dev/oravg/data_20g_15
/dev/raw/raw57/dev/oravg/data_20g_16
/dev/raw/raw58/dev/oravg/data_20g_17
/dev/raw/raw59/dev/oravg/data_20g_18
/dev/raw/raw60/dev/oravg/data_20g_19
/dev/raw/raw61/dev/oravg/data_20g_20
/dev/raw/raw62/dev/oravg/data_20g_21
/dev/raw/raw63/dev/oravg/data_20g_22
/dev/raw/raw64/dev/oravg/data_20g_23
/dev/raw/raw65/dev/oravg/data_20g_24
/dev/raw/raw66/dev/oravg/data_20g_25
/dev/raw/raw67/dev/oravg/data_20g_26
/dev/raw/raw68/dev/oravg/data_20g_27
/dev/raw/raw69/dev/oravg/data_20g_28
/dev/raw/raw70/dev/oravg/data_20g_29
/dev/raw/raw71/dev/oravg/data_20g_30
/dev/raw/raw72/dev/oravg/data_tmp01
/dev/raw/raw73/dev/oravg/data_tmp02
/dev/raw/raw74/dev/oravg/data_tmp03
/dev/raw/raw75/dev/oravg/data_tmp04
/dev/raw/raw76/dev/oravg/data_20g_31
/dev/raw/raw77/dev/oravg/data_20g_32
/dev/raw/raw78/dev/oravg/data_20g_33
/dev/raw/raw79/dev/oravg/data_20g_34
/dev/raw/raw80/dev/oravg/data_20g_35
/dev/raw/raw81/dev/oravg/data_20g_36
要使映射立即生效,请执行如下命令:
#/sbin/servicerawdevicesrestart
修改裸设备权限
#chownoracle:dba/dev/raw/raw*
#chmod660/dev/raw/raw*
#ls-lat/dev/raw/raw*
crw-rw----1oracledba162,2Jan1419:49/dev/raw/raw2
crw-rw----1oracledba162,10Jan1419:49/dev/raw/raw10
crw-rw----1oracledba162,11Jan1419:49/dev/raw/raw11
crw-rw----1oracledba162,12Jan1419:49/dev/raw/raw12
crw-rw----1oracledba162,15Jan1419:49/dev/raw/raw15
crw-rw----1oracledba162,5Jan1419:49/dev/raw/raw5
crw-rw----1oracledba162,4Jan1419:49/dev/raw/raw4
crw-rw----1oracledba162,3Jan1419:48/dev/raw/raw3
crw-rw----1oracledba162,26Jan1419:46/dev/raw/raw26
crw-rw----1oracledba162,13Jan1419:00/dev/raw/raw13
crw-rw----1oracledba162,23Jan1419:00/dev/raw/raw23
crw-rw----1oracledba162,39Jan1419:00/dev/raw/raw39
crw-rw----1oracledba162,34Jan1418:56/dev/raw/raw34
crw-rw----1oracledba162,27Jan1418:56/dev/raw/raw27
crw-rw----1oracledba162,14Jan1418:55/dev/raw/raw14
crw-rw----1oracledba162,7Jan1418:49/dev/raw/raw7
crw-rw----1oracledba162,36Jan1418:39/dev/raw/raw36
crw-rw----1oracledba162,37Jan1418:39/dev/raw/raw37
crw-rw----1oracledba162,30Jan1418:39/dev/raw/raw30
crw-rw----1oracledba162,31Jan1418:39/dev/raw/raw31
crw-rw----1oracledba162,28Jan1418:39/dev/raw/raw28
crw-rw----1oracledba162,29Jan1418:39/dev/raw/raw29
crw-rw----1oracledba162,32Jan1418:36/dev/raw/raw32
crw-rw----1oracledba162,33Jan1418:36/dev/raw/raw33
crw-rw----1oracledba162,35Jan1418:36/dev/raw/raw35
crw-rw----1oracledba162,22Jan1418:29/dev/raw/raw22
crw-rw----1oracledba162,72Jan1414:20/dev/raw/raw72
crw-rw----1oracledba162,43Jan1411:30/dev/raw/raw43
crw-rw----1oracledba162,42Jan1411:30/dev/raw/raw42
crw-rw----1oracledba162,24Jan1411:21/dev/raw/raw24
crw-rw----1oracledba162,25Jan1411:21/dev/raw/raw25
crw-rw----1oracledba162,38Jan1411:21/dev/raw/raw38
crw-rw----1oracledba162,6Jan1411:21/dev/raw/raw6
crw-rw----1oracledba162,81Jan1323:33/dev/raw/raw81
crw-rw----1oracledba162,80Jan1323:33/dev/raw/raw80
crw-rw----1oracledba162,79Jan1323:33/dev/raw/raw79
crw-rw----1oracledba162,77Jan1323:33/dev/raw/raw77
crw-rw----1oracledba162,78Jan1323:33/dev/raw/raw78
crw-rw----1oracledba162,74Jan1323:33/dev/raw/raw74
crw-rw----1oracledba162,75Jan1323:33/dev/raw/raw75
crw-rw----1oracledba162,76Jan1323:33/dev/raw/raw76
crw-rw----1oracledba162,73Jan1323:33/dev/raw/raw73
crw-rw----1oracledba162,71Jan1323:33/dev/raw/raw71
crw-rw----1oracledba162,70Jan1323:33/dev/raw/raw70
crw-rw----1oracledba162,68Jan1323:33/dev/raw/raw68
crw-rw----1oracledba162,69Jan1323:33/dev/raw/raw69
crw-rw----1oracledba162,61Jan1323:33/dev/raw/raw61
crw-rw----1oracledba162,66Jan1323:33/dev/raw/raw66
crw-rw----1oracledba162,67Jan1323:33/dev/raw/raw67
crw-rw----1oracledba162,64Jan1323:33/dev/raw/raw64
crw-rw----1oracledba162,65Jan1323:33/dev/raw/raw65
crw-rw----1oracledba162,62Jan1323:33/dev/raw/raw62
crw-rw----1oracledba162,63Jan1323:33/dev/raw/raw63
crw-rw----1oracledba162,59Jan1323:33/dev/raw/raw59
crw-rw----1oracledba162,60Jan1323:33/dev/raw/raw60
crw-rw----1oracledba162,58Jan1323:33/dev/raw/raw58
crw-rw----1oracledba162,57Jan1323:33/dev/raw/raw57
crw-rw----1oracledba162,56Jan1323:33/dev/raw/raw56
crw-rw----1oracledba162,55Jan1323:33/dev/raw/raw55
crw-rw----1oracledba162,54Jan1323:33/dev/raw/raw54
crw-rw----1oracledba162,53Jan1323:33/dev/raw/raw53
crw-rw----1oracledba162,52Jan1323:33/dev/raw/raw52
crw-rw----1oracledba162,51Jan1323:33/dev/raw/raw51
crw-rw----1oracledba162,50Jan1323:33/dev/raw/raw50
crw-rw----1oracledba162,49Jan1323:33/dev/raw/raw49
crw-rw----1oracledba162,48Jan1323:33/dev/raw/raw48
crw-rw----1oracledba162,47Jan1323:33/dev/raw/raw47
crw-rw----1oracledba162,46Jan1323:33/dev/raw/raw46
crw-rw----1oracledba162,45Jan1323:33/dev/raw/raw45
crw-rw----1oracledba162,44Jan1323:33/dev/raw/raw44
crw-rw----1oracledba162,41Jan1323:33/dev/raw/raw41
crw-rw----1oracledba162,40Jan1323:33/dev/raw/raw40
crw-rw----1oracledba162,21Jan1323:33/dev/raw/raw21
crw-rw----1oracledba162,19Jan1323:33/dev/raw/raw19
crw-rw----1oracledba162,20Jan1323:33/dev/raw/raw20
crw-rw----1oracledba162,18Jan1323:33/dev/raw/raw18
crw-rw----1oracledba162,17Jan1323:33/dev/raw/raw17
crw-rw----1oracledba162,16Jan1323:33/dev/raw/raw16
crw-rw----1oracledba162,9Jan1323:33/dev/raw/raw9
crw-rw----1oracledba162,8Jan1323:33/dev/raw/raw8
crw-rw----1oracledba162,1Jan1323:33/dev/raw/raw1
修改/etc/rc.local
chownoracle:oinstall/dev/raw/raw1
chmod640/dev/raw/raw1
chownoracle:dba/dev/raw/raw*
chmod660/dev/raw/raw*
3.13使SSH等效
要建立用户等效性,请在两个节点上以oracle用户身份生成用户的公钥和私钥,在这两个节点上执行以下任务;在ORADB1上执行
[oracle@oradb1~]$mkdir~/.ssh
[oracle@oradb1~]$chmod700~/.ssh
[oracle@oradb1~]$ssh-keygen-trsa
Generatingpublic/privatersakeypair.
Enterfileinwhichtosavethekey(/home/oracle/.ssh/id_rsa):
Enterpassphrase(emptyfornopassphrase):
Entersamepassphraseagain:
Youridentificationhasbeensavedin/home/oracle/.ssh/id_rsa.
Yourpublickeyhasbeensavedin/home/oracle/.ssh/id_rsa.pub.
Thekeyfingerprintis:
87:54:4f:92:ba:ed:7b:51:5d:1d:59:5b:f9:44:da:b6oracle@oradb1
在ORADB2上执行
[oracle@oradb2~]$mkdir~/.ssh
[oracle@oradb2~]$chmod700~/.ssh
[oracle@oradb2~]$ssh-keygen-trsa
Generatingpublic/privatersakeypair.
Enterfileinwhichtosavethekey(/home/oracle/.ssh/id_rsa):
Enterpassphrase(emptyfornopassphrase):
Entersamepassphraseagain:
Youridentificationhasbeensavedin/home/oracle/.ssh/id_rsa.
Yourpublickeyhasbeensavedin/home/oracle/.ssh/id_rsa.pub.
Thekeyfingerprintis:
29:5a:35:ac:0a:03:2c:38:22:3c:95:5d:68:aa:56:66oracle@oradb2
在ORADB1上执行
[oracle@oradb1~]$touch~/.ssh/authorized_keys
[oracle@oradb1~]$sshoradb1cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
[oracle@oradb1~]$sshoradb2cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
[oracle@oradb1~]$scp~/.ssh/authorized_keysoradb2:.ssh/authorized_keys
Theauthenticityofhost'oradb2(10.1.3.10)'can'tbeestablished.
RSAkeyfingerprintis63:d3:52:d4:4d:e2:cb:ac:8d:4a:66:9f:f1:ab:28:1f.
Areyousureyouwanttocontinueconnecting(yes/no)?yes
Warning:Permanentlyadded'oradb2,10.1.3.10'(RSA)tothelistofknownhosts.
oracle@oradb2'spassword:
authorized_keys100%17161.7KB/s00:00
在每个节点上测试连接。验证当您再次运行以下命令时,系统是否不提示您输入口令。
sshoradb1date
sshoradb2date
sshoradb1-privdate
sshoradb2-privdate
sshoradb1date
sshoradb2date
sshoradb1-privdate
sshoradb2-privdate
3.14配置OracleASM
以Root身份在两个节点上配置ASMLib;#/etc/init.d/oracleasmconfigure
ConfiguringtheOracleASMlibrarydriver.
Thiswillconfiguretheon-bootpropertiesoftheOracleASMlibrary
driver.Thefollowingquestionswilldeterminewhetherthedriveris
loadedonbootandwhatpermissionsitwillhave.Thecurrentvalues
willbeshowninbrackets('[]').Hittingwithouttypingan
answerwillkeepthatcurrentvalue.Ctrl-Cwillabort.
Defaultusertoownthedriverinterface[]:oracle
Defaultgrouptoownthedriverinterface[]:dba
StartOracleASMlibrarydriveronboot(y/n)
:y
FixpermissionsofOracleASMdisksonboot(y/n)[y]:y
WritingOracleASMlibrarydriverconfiguration:[OK]
Loadingmodule"oracleasm":[OK]
MountingASMlibdriverfilesystem:[OK]
ScanningsystemforASMdisks:[OK]
3.15创建Oracle集群目录
在oradb1上以root身份执行#mkdir/oracle/oracrs
#chown-Roracle:dba/oracle/oracrs
#ln-s/oracle/oracrs/ocr.crs/dev/raw/raw1
#ln-s/oracle/oracrs/vote.crs/dev/raw/raw2
4高可用数据库安装
4.1安装Oracle集群件
解压clusterware组件到/code文件夹【解压命令为zcat10201_clusterware_linux_x86_64.cpio.gz|cpio-idmv】,在oradb1上以oracle用户身份执行:
[oracle@oradb1~]$/code/clusterware/runInstaller
欢迎页面:单击Next。
指定Inventory目录和证书:
输入inventory目录的完整路径:/oracle/oraInventory。
指定操作系统组名:oinstall。
指定Home详细内容:
名称:OraCrs10g_home
/oracle/product/10.2.0/crs_1
特定于产品的必要条件检查:
忽略有关物理内存要求的警告。
指定集群配置:单击Add。
公共节点名称:oradb2
专用节点名称:oradb2-priv
虚拟主机名称:oradb2-vip
指定网络接口用法:
接口名称:eth1
子网:10.1.3.0
接口类型:Public
接口名称:eth0
子网:192.168.1.0
接口类型:Private
指定Oracle集群注册表(OCR)位置:选择ExternalRedundancy。
为了简单起见,这里将不镜像OCR。在生产环境中,您可能会考虑复用OCR以实现更高的冗余。
指定OCR位置:/oracle/oracrs/ocr.crs
指定表决磁盘位置:选择ExternalRedundancy。
同样,为了简单起见,我们选择不镜像表决磁盘。
表决磁盘位置:/oracle/oracrs/vote.crs
摘要:单击Install。
当弹出ExecuteConfigurationscripts界面时,先将p4679769_10201_LINUX补丁进行安装,方法为将p4679769_10201_LINUX.zip中的clsfmt.bin文件以oracle身份上传至/oracle/product/10.2.0/crs_1/bin文件夹下【oradb1、oradb2都要做】,覆盖原有的clsfmt.bin;
修改/oracle/product/10.2.0/crs_1/bin/vipca文件:
找到如下内容:
Removethisworkaroundwhenthebug3937317isfixed
arch=`uname-m`
if["$arch"="i686"-o"$arch"="ia64"]
then
LD_ASSUME_KERNEL=2.4.19
exportLD_ASSUME_KERNEL
fi
#Endworkaround
在fi后新添加一行:
unsetLD_ASSUME_KERNEL
修改/oracle/product/10.2.0/crs_1/bin/srvctl文件:
找到如下内容:
LD_ASSUME_KERNEL=2.4.19
exportLD_ASSUME_KERNEL
同样在其后新增加一行:
unsetLD_ASSUME_KERNEL
执行配置脚本:以root用户身份按顺序执行以下脚本(一次执行一个)。在当前脚本完成后,再继续执行下一个脚本。
a)在oradb1上执行/oracle/oraInventory/orainstRoot.sh
b)在oradb2上执行/oracle/oraInventory/orainstRoot.sh
c)在oradb1上执行/oracle/product/10.2.0/crs_1/root.sh
d)在oradb2上执行/oracle/product/10.2.0/crs_1/root.sh
oradb2上的root.sh脚本会自动调用VIPCA,但会因为“Thegiveninterface(s),"eth0"isnotpublic.PublicinterfacesshouldbeusedtoconfigurevirtualIPs.”错误而失败。如果您的公共接口使用不可路由的IP地址(10.1.3.x),则Oracle集群验证实用程序(CVU)将无法找到合适的公共接口。一种解决方法是手动运行VIPCA。
以root身份在第二个节点上执行如下命令
[root@oradb2~]#cd/oracle/product/10.2.0/crs_1/bin
[root@oradb2bin]#./oifcfgiflist
eth0192.168.1.0
virbr0192.168.122.0
eth110.1.3.0
[root@oradb2bin]#./oifcfgsetif-globaleth1/10.1.3.0:public
[root@oradb2bin]#./oifcfgsetif-globaleth0/192.168.1.0:cluster_interconnect
[root@oradb2bin]#./oifcfggetif
eth0255.255.255.0globalcluster_interconnect
eth0192.168.1.0globalcluster_interconnect
eth1255.255.255.192globalpublic
eth110.1.3.0globalpublic
以root用户身份在第二个节点上手动调用VIPCA。
#/oracle/product/10.2.0/crs_1/bin/vipca
欢迎页面:单击Next
网络接口:选择eth0
集群节点的虚拟IP:
节点名称:oradb1
IP别名:oradb1-vip
IP地址:10.1.3.9
子网掩码:255.255.255.0
节点名称:oradb2
IP别名:oradb2-vip
IP地址:10.1.3.11
子网掩码:255.255.255.0
摘要:单击Finish。
配置助手进度对话框:配置完成后,单击OK。
配置结果:单击Exit。
返回到oradb1的执行配置脚本屏幕,然后单击OK。
配置助手:验证所有检查均成功。OUI在最后会执行集群件安装后检查。
安装结束:单击Exit。
4.2安装Oracle数据库10g
下载Oracle10gdatabaseforlinux版本后,以Oracle用户身份执行:[oracle@oradb1~]$/u01/staging/database/runInstaller
欢迎页面:单击Next。
选择安装类型:
选择EnterpriseEdition。
指定Home详细内容:
名称:OraDb10g_home1
路径:/u01/app/oracle/product/10.2.0/db_1
指定硬件集群安装模式:
选择ClusterInstallation。
单击SelectAll。
特定于产品的必要条件检查:
忽略有关物理内存要求的警告。
选择配置选项:
仅安装数据库软件。
摘要:单击Install。
安装执行过程
以root用户身份在oradb1、oradb2上顺序执行脚本,完毕后点击OK
点击Exit退出安装
确认退出
4.3安装10.2.0.5集群件补丁
以oracle身份登陆节点oradb1,在节点oradb1上用oracle用户停止集群进程。可以用crs_stop-all停止所有服务。如下[oracle@oradb1~]$crs_stop-all
或者逐个停止也可以。
[oracle@oradb1~]$/oracle/crs/10.2.0/bin/crs_stop-all
一定要确认服务已经停止,查看crs运行状态。
[oracle@oradb1~]#crs_stat-t
查看两个节点的所有服务stat都是offline
解压升级包
打开终端,切换到oracle用户下,切换目录到升级包目录,如下
[oracle@oradb1~]$su–oracle
[oracle@oradb1~]$cd/code/10205_patch
[oracle@oradb1~]$unzipp6810189_10204_Linux-x86-64.zip#解压操作
在oradb1上切换到升级包目录下,执行升级操作:
[oracle@oradb1~]$cd/code/10205_patch
[oracle@oradb1~]$./runInstaller
注意:如果不能打开图形界面,确认已经用root用户执行过xhost+
系统弹出如下界面在界面选择:OraCrs10g_home,并确认CRS安装路径。
注意:在这里选择名称的下拉箭头,选择crs的安装名称。
单击下一步按钮。
默认继续下一步操作,系统进行升级前检查,检查结果必须都通过,否则不能进行下一步升级。
验证通过后继续下一步操作。
单击“安装”按钮,执行安装操作,系统开始正式安装补丁
补丁安装结束。
根据安装结束提示,使用root用户分别在两个节点上执行如下命令操作。
在节点1(oradb1)上执行操作:
[root@oradb1~]#/oracle/crs/10.2.0/bin/crsctlstopcrs
[root@oradb1~]#/oracle/crs/10.2.0/install/root102.sh
节点1运行完成后上述操作后,在节点2(oradb2)上执行操作:
[root@oradb2~]#/oracle/crs/10.2.0/bin/crsctlstopcrs
[root@oradb2~]#/oracle/crs/10.2.0/install/root102.sh
执行完成后,返回安装界面点击Exit,Yes确认退出安装
升级CRS完成!
4.4安装10.2.0.5数据库软件补丁
登陆节点1,在节点1上(oradb1)用oracle用户停止进程。执行[oracle@oradb1~]$crs_stop–all
确认服务已经停止
[oracle@oradb1~]$crs_stat-t
查看两个节点的所有服务stat都是offline
在oradb1的升级包目录下:
[oracle@oradb1~]$cd/code/10205_patch
[oracle@oradb1~]$./runInstaller
系统弹出如下界面在界面选择:OraDb10g_home1,并确认Oracle安装路径。如图所示。在此选择默认即可。
取消选中“IwishtoreceivesecurityupdatesviaMyOracleSupport”选项。点击Next
点击Yes,确认不需要Email地址
单击下一步按钮。
默认继续下一步操作,系统进行升级前检查,检查结果必须都通过,否则不能进行下一步升级。
验证通过后继续Install操作。
单击“安装”按钮,执行安装操作后,补丁开始正式安装
安装过程中会提示在两个节点上使用Root用户执行如下root.sh文件
注意:在两个节点上执行覆盖文件之前,建议把/usr/local/bin做一下备份,命令如下:
[root@oradb1~]#cd/usr/local/
[root@oradb1~]#cp–rfbinbin.old
[root@oradb2~]#cd/usr/local/
[root@oradb2~]#cp–rfbinbin.old
分别在两个节点上执行如下命令。提示如图所示。
在节点1上执行如下命令:
[root@oradb1~]#/oracle/product/10.2.0/db_1/root.sh
执行完成后在节点2上执行如下命令:
[root@oradb2~]#/oracle/product/10.2.0/db_1/root.sh
在执行过程需要输入必要信息:
1)输入本地bin目录,选择默认,直接回车即可。
2)提示要覆盖三个文件:先将两个节点上的三个文件都进行备份,然后输入Y直接覆盖。
两个节点都执行完毕后,点击第十步里的“确定OK”。
安装完成,点击Exit并确认(Yes)退出。
4.5创建数据库监听Listener
以oracle用户身份在oradb1节点执行netca命令,打开网络配置向导,选择Next:点击“Selectallnodes”:
选择Listenerconfiguration
点击Add
保留默认名称Listener点击Next
保留默认值,点击Next
保留默认端口1521,点击Next
选择No,点击Next
点击Next
点击Finish
监听创建完成。
4.6创建数据库oradb
由于本文是以裸设备安装数据库,则先创建裸设备与表空间的映射关系文件,步骤如下:以oracle身份执行命令
touch~/raw_map.txt
vi~/raw_map.txt
输入内容:
###########################
system=/dev/raw/raw3
sysaux=/dev/raw/raw4
undotbs1=/dev/raw/raw5
undotbs2=/dev/raw/raw6
users=/dev/raw/raw7
temp=/dev/raw/raw8
control1=/dev/raw/raw10
control2=/dev/raw/raw11
control3=/dev/raw/raw12
spfile=/dev/raw/raw13
redo1_1=/dev/raw/raw14
redo1_2=/dev/raw/raw15
redo1_3=/dev/raw/raw16
redo1_4=/dev/raw/raw17
redo2_1=/dev/raw/raw18
redo2_2=/dev/raw/raw19
redo2_3=/dev/raw/raw20
redo2_4=/dev/raw/raw21
############################
输入:wq保存并退出
以oracle用户身份在oradb1节点执行dbca命令,打开数据库配置向导,选择默认的“OracleRealApplicationClusterdatabase”选择Next:
选择创建数据库(createadatabase),点击Next
选择selectall,点击Next
数据库模板:
选择GeneralPurpose。
数据库标识:
全局数据库名称:oradb
SID前缀:oradb
管理选项:
选择ConfiguretheDatabasewithEnterpriseManager。
数据库证书:
针对所有帐户使用相同的口令。
存储选项:
选择RawDevices。
选择SpecifyRawDevices映射文件:
选择/home/oracle/raw_map.txt。
去掉数据库闪回选项:
去掉勾选SpecifyflashRecoveryArea。
默认选项,下一步:
添加oradbsrv数据库服务名
对oradb1和oradb2选择Preferred,TAFPolicy选择Basic,点击Next
修改内存占用比率为50%,切换到Sizing标签页:
修改Process值从150到800,点击CharacterSets标签页:
选择字符集为ZHS16GBK-GBK16-bitSimplifiedChinese,点击ConnectionMode标签页:
按默认选择的DedicatedMode,点击ParameterFile标签页:
选择CreateServerparameterfile(SPFILE),点击Next
确认数据库初始化参数(Controlfile、Datafiles、RedoLogGroups)
按默认选项,点击Finish
确认概要,点击OK
开始创建数据库
创建数据库完成
如不需修改password,点击Exit
等待在oradb1、oradb2启动instances后,则数据库创建完成
恭喜,您已经在EnterpriseLinux上成功安装了OracleRAC数据库10g!
5了解OracleRAC数据库
5.1检查数据库集群运行状况
在任意节点上运行crs_stat–t命令:[oracle@oradb1~]$crs_stat-t
NameTypeTargetStateHost
------------------------------------------------------------
ora.oradb.dbapplicationONLINEONLINEoradb2
ora....b1.instapplicationONLINEONLINEoradb1
ora....b2.instapplicationONLINEONLINEoradb2
ora....bsrv.csapplicationONLINEONLINEoradb2
ora....db1.srvapplicationONLINEONLINEoradb1
ora....db2.srvapplicationONLINEONLINEoradb2
ora....B1.lsnrapplicationONLINEONLINEoradb1
ora....db1.gsdapplicationONLINEONLINEoradb1
ora....db1.onsapplicationONLINEONLINEoradb1
ora....db1.vipapplicationONLINEONLINEoradb1
ora....B2.lsnrapplicationONLINEONLINEoradb2
ora....db2.gsdapplicationONLINEONLINEoradb2
ora....db2.onsapplicationONLINEONLINEoradb2
ora....db2.vipapplicationONLINEONLINEoradb2
检查Target和State状态,如果全部为“ONLINE”说明正常,否则状态为“OFFLINE”。
5.2数据库TNS
通过TNS连接数据库时,双机方式与单机方式TNS连接串有所不通,普通单机TNS如下,例如:ORADB2=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb2-vip)(PORT=1521))
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=oradb)
(INSTANCE_NAME=oradb2)
)
)
ORADB1=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb1-vip)(PORT=1521))
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=oradb)
(INSTANCE_NAME=oradb1)
)
)
而双机方式连接串应为:
ORADBSRV=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb1-vip)(PORT=1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=oradb2-vip)(PORT=1521))
(LOAD_BALANCE=yes)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=oradbsrv)
(FAILOVER_MODE=
(TYPE=SELECT)
(METHOD=BASIC)
(RETRIES=180)
(DELAY=5)
)
)
)
用户将以上连接串复制到$ORACLE_HOME/network/admin/tnsnames.ora文件中,即可通过TNS连接OracleRAC。
5.3检查Oracle集群件的状态
在节点1和节点2运行crsctlcheckcrs命令:[oracle@oradb1~]$crsctlcheckcrs
CSSappearshealthy
CRSappearshealthy
EVMappearshealthy
[oracle@oradb2~]$crsctlcheckcrs
CSSappearshealthy
CRSappearshealthy
EVMappearshealthy
5.4列出Oracle实例
使用sqlplus客户端连接OracleRAC,执行以下SQL:SQL>selectinstance_name,host_name,archiver,thread#,statusfromgv$instance;
INSTANCE_NAMEHOST_NAMEARCHIVERTHREAD#STATUS
-------------------------------------------------------
oradb2oradb2STOPPED2OPEN
oradb1oradb1STOPPED1OPEN
5.5检查连接
验证能够连接到每个节点上的实例和服务sqlplussystem@oradb1
sqlplussystem@oradb2
sqlplussystem@oradb
5.6检查数据库配置
SQL>showsgaTotalSystemGlobalArea1610612736bytes
FixedSize2096632bytes
VariableSize520094216bytes
DatabaseBuffers1073741824bytes
RedoBuffers14680064bytes
SQL>selectfile_name,round(bytes/1024/1024,0)||'MB'size_Nfromdba_data_files;
FILE_NAMESIZE_N
------------------------------------
/dev/raw/raw7656MB
/dev/raw/raw4300MB
/dev/raw/raw5150MB
/dev/raw/raw3460MB
/dev/raw/raw666MB
/dev/raw/raw252048MB
/dev/raw/raw228192MB
/dev/raw/raw232048MB
/dev/raw/raw244096MB
/dev/raw/raw264096MB
/dev/raw/raw272048MB
/dev/raw/raw284096MB
/dev/raw/raw292048MB
/dev/raw/raw308129MB
/dev/raw/raw314096MB
/dev/raw/raw328192MB
/dev/raw/raw334096MB
/dev/raw/raw344096MB
/dev/raw/raw352048MB
/dev/raw/raw364096MB
/dev/raw/raw372048MB
/dev/raw/raw381024MB
/dev/raw/raw391024MB
/dev/raw/raw425000MB
/dev/raw/raw401024MB
SQL>selectgroup#,type,member,is_recovery_dest_filefromv$logfileorderbygroup#;
GROUP#TYPEMEMBERIS_RECOVERY_DEST_FILE
-----------------------------------------------------------------------
1ONLINE/dev/raw/raw14NO
2ONLINE/dev/raw/raw15NO
3ONLINE/dev/raw/raw18NO
4ONLINE/dev/raw/raw19NO
5.7启动和停止应用程序资源
遵循以下步骤启动和停止单独的应用程序资源。启动数据库实例
srvctlstartnodeapps-n<node1hostname>
srvctlstartnodeapps-n<node2hostname>
srvctlstartasm-n<node1hostname>
srvctlstartasm-n<node2hostname>
srvctlstartdatabase-d<databasename>
srvctlstartservice-d<databasename>-s<servicename>
crs_stat-t
停止Oracle实例
srvctlstopservice-d<databasename>-s<servicename>
srvctlstopdatabase-d<databasename>
srvctlstopasm-n<node1hostname>
srvctlstopasm-n<node2hostname>
srvctlstopnodeapps-n<node1hostname>
srvctlstopnodeapps-n<node2hostname>
crs_stat-t
用户也可通过crs_start–all或crs_stop–all启动和停止数据库。
[oracle@oradb1~]$crs_start–all
[oracle@oradb1~]$crs_stop–all
5.8启动和停止数据库控制台
Oracle企业管理器数据库控制台提供了一个非常好的集成式综合GUI界面,用于管理集群数据库环境。您可以在控制台内执行几乎所有的任务。要访问数据库控制台,请打开Web浏览器并输入下面的URL。
以system用户身份登录,并输入您先前在数据库安装期间选择的口令。
²停止控制台
[oracle@oradb1~]$emctlstopdbconsole
TZsettoUS/Eastern
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
StoppingOracleEnterpriseManager10gDatabaseControl...
...Stopped.
²启动控制台
[oracle@oradb1~]$emctlstartdbconsole
TZsettoUS/Eastern
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
StartingOracleEnterpriseManager10gDatabaseControl
...................started.
------------------------------------------------------------------
Logsaregeneratedindirectory
/oracle/product/10.2.0/db_1/oradb1_oradb1/sysman/log
²验证控制台状态
[oracle@oradb1~]$emctlstatusdbconsole
TZsettoPRC
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
OracleEnterpriseManager10gisrunning.
------------------------------------------------------------------
Logsaregeneratedindirectory/oracle/product/10.2.0/db_1/oradb1_oradb1/sysman/log
[oracle@oradb1~]$emctlstatusagent
TZsettoPRC
OracleEnterpriseManager10gDatabaseControlRelease10.2.0.1.0
Copyright(c)1996,2005OracleCorporation.Allrightsreserved.
---------------------------------------------------------------
AgentVersion:10.1.0.4.1
OMSVersion:10.1.0.4.0
ProtocolVersion:10.1.0.2.0
AgentHome:/oracle/product/10.2.0/db_1/oradb1_oradb1
Agentbinaries:/oracle/product/10.2.0/db_1
AgentProcessID:15597
ParentProcessID:11690
AgentURL:
Startedat:2013-01-1409:18:02
Startedbyuser:oracle
LastReload:2013-01-1409:18:02
Lastsuccessfulupload:2009-01-1811:07:13
TotalMegabytesofXMLfilesuploadedsofar:38.15
NumberofXMLfilespendingupload:2
SizeofXMLfilespendingupload(MB):0.01
Availablediskspaceonuploadfilesystem:93.10%
---------------------------------------------------------------
AgentisRunningandReady
6如何扩展表空间
1)哪些裸设备已经被使用,可以用户sql脚本(selectnamefromv$datafile)来查询得到;
2)参考查看/etc/sysconfig/rawdevices文件内容,即可得到哪个lv映射到了哪个raw设备。如“/dev/raw/raw3/dev/oravg/system”,表示oravg卷组中的system这个lv映射到了/dev/raw/raw3这个裸设备文件;分配表空间时,就参考这个文件中,哪些裸设备还未被使用,就可以将这些裸设备文件,分配给所需的表空间。
注:data开头的lv对应的裸设备可以被加入到表空间中,非data开头的lv不能使用,因为已经作为oracle安装时的默认初始文件已经使用了;lv名称中有tmp的是预留作为tmp表空间扩展使用的,其他都是作为主表空间扩展预留的;
3)对已有的表空间,如果发现空间满时,可以通过新增数据文件方式扩展表空间,方法如下:
lvs用来查看目前系统有哪些lv逻辑卷,当lv的属性为“-wi-a-”时,则该lv所对应的裸设备未被使用,可以做为扩展表空间的数据文件使用:
[root@oradb1~]#lvs
LVVGAttrLSizeOriginSnap%MoveLogCopy%Convert
LogVol00VolGroup00-wi-ao245.41G
LogVol01VolGroup00-wi-ao33.34G
control1oravg-wi-ao2.00G
control2oravg-wi-ao2.00G
control3oravg-wi-ao2.00G
redo1_1oravg-wi-ao200.00M
redo1_2oravg-wi-ao200.00M
redo1_3oravg-wi-a-200.00M
redo1_4oravg-wi-a-200.00M
redo2_1oravg-wi-ao200.00M
redo2_2oravg-wi-ao200.00M
redo2_3oravg-wi-a-200.00M
redo2_4oravg-wi-a-200.00M
spfileoravg-wi-a-100.00M
sysauxoravg-wi-ao5.00G
systemoravg-wi-ao5.00G
temp01oravg-wi-ao2.00G
temp02oravg-wi-a-2.00G
undotbs1oravg-wi-ao5.00G
undotbs2oravg-wi-ao5.00G
usersoravg-wi-ao2.00G
data_10g_01oravg-wi-ao10.00G
data_10g_02oravg-wi-ao10.00G
data_10g_03oravg-wi-ao10.00G
data_10g_04oravg-wi-ao10.00G
data_10g_05oravg-wi-ao10.00G
data_10g_06oravg-wi-ao10.00G
data_10g_07oravg-wi-ao10.00G
data_10g_08oravg-wi-ao10.00G
data_10g_09oravg-wi-ao10.00G
data_10g_10oravg-wi-ao10.00G
data_10g_11oravg-wi-ao10.00G
data_10g_12oravg-wi-ao10.00G
data_10g_13oravg-wi-ao10.00G
data_10g_14oravg-wi-ao10.00G
data_10g_15oravg-wi-ao10.00G
data_10g_16oravg-wi-ao10.00G
data_10g_17oravg-wi-ao10.00G
data_10g_18oravg-wi-ao10.00G
data_10g_19oravg-wi-ao10.00G
data_10g_20oravg-wi-a-10.00G
data_20g_01oravg-wi-ao20.00G
data_20g_02oravg-wi-a-20.00G
data_20g_03oravg-wi-a-20.00G
data_20g_04oravg-wi-a-20.00G
data_20g_05oravg-wi-a-20.00G
data_20g_06oravg-wi-a-20.00G
data_20g_07oravg-wi-a-20.00G
data_20g_08oravg-wi-a-20.00G
data_20g_09oravg-wi-a-20.00G
data_20g_10oravg-wi-a-20.00G
data_20g_11oravg-wi-a-20.00G
data_20g_12oravg-wi-a-20.00G
data_20g_13oravg-wi-a-20.00G
data_20g_14oravg-wi-a-20.00G
data_20g_15oravg-wi-a-20.00G
data_20g_16oravg-wi-a-20.00G
data_20g_17oravg-wi-a-20.00G
data_20g_18oravg-wi-a-20.00G
data_20g_19oravg-wi-a-20.00G
data_20g_20oravg-wi-a-20.00G
data_20g_21oravg-wi-a-20.00G
data_20g_22oravg-wi-a-20.00G
data_20g_23oravg-wi-a-20.00G
data_20g_24oravg-wi-a-20.00G
data_20g_25oravg-wi-a-20.00G
data_20g_26oravg-wi-a-20.00G
data_20g_27oravg-wi-a-20.00G
data_20g_28oravg-wi-a-20.00G
data_20g_29oravg-wi-a-20.00G
data_20g_30oravg-wi-a-20.00G
data_20g_31oravg-wi-a-20.00G
data_20g_32oravg-wi-a-20.00G
data_20g_33oravg-wi-a-20.00G
data_20g_34oravg-wi-a-20.00G
data_20g_35oravg-wi-a-20.00G
data_20g_36oravg-wi-a-20.00G
data_tmp01oravg-wi-ao10.00G
data_tmp02oravg-wi-a-10.00G
data_tmp03oravg-wi-a-10.00G
data_tmp04oravg-wi-a-10.00G
7如何新增表空间
创建表空间示例sql:
CREATETABLESPACEtbs_02
DATAFILE'diskb:tbs_f5.dat'SIZE500KREUSE
AUTOEXTENDONNEXT500KMAXSIZE100M;
这里tbs_02是表空间名称,“diskb:tbs_f5.dat”是数据文件路径,初始大小500k,自增长500k,最大100M,按需调整即可。注意的是,这里的“diskb:tbs_f5.dat”换成第6章节中确定的不在占用的“-wi-a-”状态的裸设备文件/dev/raw/raw[x]即可。
8如何使用扩充存储
如果因为存储空间不够,新增加了新的存储设备,则需经过如下几步,进行扩容,这里假设新增的存储路径为/dev/mapper/mpath9:
1)为存储分配pv,标记为LVM,命令为pvcreate,格式例如:
#pvcreate/dev/mapper/mpath9
2)将新存储增加到已有的vg中,命令为vgextend,格式如下:
#vgextendoravg/dev/mapper/mpath9
3)在oravg中,创建新的或扩展已有的lv,命令为:
①创建新的:
#lvcreate-L5G-nnew_lvoravg
②扩展已有的:
#lvextend–L+20M/dev/oravg/old_lv(扩充逻辑卷old_lv的大小)
记得在B机上,要激活刚新创建的lv,如果是扩展就不需要了。
#lvchange-ay/dev/oravg/new_lv
注:如果是新增的lv,继续新增裸设备映射
4)修改/etc/sysconfig/rawdevices文件,增加内容:
/dev/raw/raw99/dev/datavg/new_lv
5)变更裸设备主属:
chownoracle:dba/dev/raw/raw99
6)变更裸设备权限:
chmod660/dev/raw/raw99
7)接下来这个裸设备就可以作为数据文件,加入到表空间中了,方法参考第6章节。
9OracleRAC常见问题
9.1无法通过JDBCURL以负载均衡方式连接数据库
采用jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.3.9)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.3.11)(PORT=1521))(LOAD_BALANCE=yes)(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=oradbsrv)(FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC)(RETRIES=180)(DELAY=5))))连接串连接数据库时通常无法连接数据库。解决方法:
以管理员账户连接数据库执行以下命令:
sql>altersystemsetlocal_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.3.9)(PORT=1521))'sid='oradb1';
sql>altersystemsetlocal_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.3.11)(PORT=1521))'sid='oradb2';
相关文章推荐
- RedHat 5.6_x86_64 + ASM + RAW+ Oracle 10g RAC (八) 添加节点—安装clusterware
- RedHat 5.6_x86_64 + ASM + RAW+ Oracle 10g RAC (九) 添加节点—安装数据库软件
- 在redhat enterprise 5 下安装ORACLE 10g【原创】
- 在Solaris 10 X86上安装Oracle 10g RAC详解 (2)
- Oracle Enterprise Linux 6.4安装Oracle Database 12c RAC图文详细教程
- linux redhat 5.6 下安装oracle 10g时系统版本错误
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.6. 安装Oracle所依赖的必要包
- VMWARE上suse linux 10环境: Oracle 10g cluster+asm+rac安装流程
- 在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程
- RedHat EL5 安装Oracle 10g RAC之--CRS 安装
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级
- Redhat-Linux-Enterprise-AS4-Up2上安装Oracle amd64_db_9204
- 在Solaris 10 X86上安装Oracle 10g RAC详解 (1)
- [原创实践]RedHat Enterprise Linux 5 安装GCC和redis
- Redhat 5.4 Oracle 10g RAC Openfiler+Multipath + RAW+ ASM 安装文档
- [原]在Solaris 10/09上静默安装和升级Oracle 10g和Oracle 11g(二)
- RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程(64bit 成功案例及修改)
- Solaris 10(x86)构建Oracle 10g RAC之--安装CRS
- [原] 在Solaris 10/09上静默安装和升级Oracle 10g和Oracle 11g(四)
- 在redhat enterprise 5 下安装ORACLE 10g【转载】