Oracle rac rawtest10g版.docx
- 文档编号:6593844
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:16
- 大小:716.19KB
Oracle rac rawtest10g版.docx
《Oracle rac rawtest10g版.docx》由会员分享,可在线阅读,更多相关《Oracle rac rawtest10g版.docx(16页珍藏版)》请在冰豆网上搜索。
Oracleracrawtest10g版
Oracleracraw+asm
服务器主机名
rac1
rac2
公共IP地址(eth0)
192.168.100.90
192.168.100.91
虚拟IP地址(eth0)
10.10.10.90
10.10.10.91
私有IP地址(eth1)
192.168.100.95
192.168.100.96
ORACLERACSID
rac1
rac2
集群实例名称
t
OCR(oracle集群注册表)
/dev/raw/raw1/dev/sdb1500M
#/dev/raw/raw2/dev/sdb2500M#的都是只做了一个
表决磁盘(votingdisk)
/dev/raw/raw3/dev/sdc1500M
#/dev/raw/raw4/dev/sdc2500M
ASM
/dev/sdd110GVOL1forOracleData
/dev/sdd25GVOL2forflash_recovery_area
数据库备份
/dev/sde110G(mkfs-text3/dev/sde1)
Node1_arch5G/oradb1_arhc归档日志
Node2_arch5G/oradb2_arch归档日志
指定OCR和VotingDisk
一般而言,如果采用存储来存放OCR和VotingDisk.存储本身就提供了redundancy策略,此时我们可以选择ExternalRedundancy选项,此时Oracle就不在考虑软件冗余了。
如果没有使用存储设备或者存储为RAID0,那么就可以使用Oracle自己提供的软件冗余机制NormalRedundancy选项,此时就会激活MirrorLocation选项.用来指定镜像文件位置,Oracle的Clusterware在运行时会维护这个Mirror文件的内容同步。
OCR最多只有一份冗余:
/dev/raw/raw1
/dev/raw/raw2
VotingDisk最多可以定义2份冗余:
/dev/raw/raw3
/dev/raw/raw4
自己在做的时候只做了4个分区,raw和asm为了简单来实现。
1.安装os,我用的rhel5.4(在安装时,分区就分两个一个swap,剩下都给/).
2.安装系统的需要的包(两节点都要执行,用yum来装)
RedHatEnterpriseLinux4.0andAsianux2.0:
binutils-2.15.92.0.2-13.EL4
compat-db-4.1.25-9
compat-libstdc++-296-2.96-132.7.2
control-center-2.8.0-12
gcc-3.4.3-22.1.EL4
gcc-c++-3.4.3-22.1.EL44
glibc-2.3.4-2.9
glibc-common-2.3.4-2.9
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-22.1
libstdc++-devel-3.4.3-22.1
make-3.80-5
pdksh-5.2.14-30
sysstat-5.0.5-1
setarch-1.6-1
libaio-devel
unixODBC
unixODBC-devel
libXp
rlwrap(可在sql上下调用,需要自己去下载)
3.修改各节点名称
vi/etc/hosts(两节点都执行)
#rac1
192.168.1.90rac1
10.10.10.90rac1-priv
192.168.1.95rac1-vip
#rac2
192.168.1.91rac2
10.10.10.91rac2-priv
192.168.1.96rac2-vip
1.privateIPaddressisusedonlyforinternalclusteringprocessing(CacheFusion)
私有IP用于心跳同步,这个对于用户层面,可以直接忽略,简单理解,这个Ip用来保证两台服务器同步数据用的私网IP。
2.VIPisusedbydatabaseapplicationstoenablefailoverwhenoneclusternodefails
虚拟IP用于客户端应用,以支持失效转移,通俗说就是一台挂了,另一台自动接管,客户端没有任何感觉。
这也是为什么要使用RAC的原因之一,另一个原因,我认为是负载均衡。
3.publicIPadressisthenormalIPaddresstypicallyusedbyDBAandSAtomanagestorage,systemanddatabase.
公有IP一般用于管理员,用来确保可以操作到正确的机器,真实IP。
4.Kernel
vi/etc/sysctl.conf(如果有问题还是去看一下装单机时候的参数,并了解一下参数的设置。
)(两节点都执行)
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
sysctl-p
5.oracle参数
vi/etc/security/limits.conf(两节点都执行)
使用HugePage内存技术,添加下面2行(文档里见过,具体的在去细看一下。
)
Oraclesoftmemlock5242880?
Oraclehardmemlock524280
oraclesoftnproc2047
oraclehardnproc16384
oraclesoftnofile1024
oraclehardnofile65536
vi/etc/pam.d/login
sessionrequired/lib/security/pam_limits.so
sessionrequiredpam_limits.so
vi/etc/profile(没有写这个参数?
)
if[$USER="oracle"];then
if[$SHELL="/bin/ksh"];then
ulimit-p16384
ulimit-n65536
else
ulimit-u16384-n65536
fi
fi
6.配置两个节点的hangcheck-time内核模块
可监控系统运行情况,并重新启动出现故障的节点。
其中使用两个参数
hangcheck_tick(定义系统检查频率)
hangcheck_margin(定义重置rac节点前的最大挂起延时)来确定节点是否出问题。
vi/etc/modprobe.conf
optionshangcheck-timerhangcheck_tick=30hangcheck_margin=180
#modprobe-vhangcheck-timer
grepHangcheck/var/log/messages|tail-2
7.Ntp
Rac2crontab–e*/1****rdate–s192.168.1.90
两节点重启ntp服务。
8.创建oracle用户(两节点都要执行,包括uid、gid相同)
groupadd–g1001dba
groupadd–g1002oinstall
useradd-u1001-goinstall-Gdba-d/home/oracleoracle
9.配置ssh,oracle用户来执行(两节点都执行)
Rac1、rac2都执行。
[oracle@rac1~]$mkdir~/.ssh
[oracle@rac1~]$chmod700~/.ssh
[oracle@rac1~]$ssh-keygen-trsa
[oracle@rac1~]$ssh-keygen-tdsa
rac1:
[oracle@rac1~]$cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
[oracle@rac1~]$cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
[oracle@rac1~]$scp~/.ssh/authorized_keysrac2:
~/.ssh/authorized_keys
Rac2:
[oracle@rac2~]$cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
[oracle@rac2~]$cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
[oracle@rac2~]$scp~/.ssh/authorized_keysrac1:
~/.ssh/authorized_keys
rac1Test:
[oracle@rac1~]$sshrac1date
[oracle@rac1~]$sshrac2date
[oracle@rac1~]$sshrac1-privdate
[oracle@rac1~]$sshrac2-privdate
rac2test:
[oracle@rac2~]$sshrac1date
[oracle@rac2~]$sshrac2date
[oracle@rac2~]$sshrac1-privdate
[oracle@rac2~]$sshrac2-privdate
10.Hosts
vi/etc/hosts
#rac1
192.168.1.90rac1
10.10.10.90rac1-priv
192.168.1.95rac1-vip
#rac2
192.168.1.91rac2
10.10.10.91rac2-priv
192.168.1.96rac2-vip
Test:
pingrac1rac2。
。
。
。
。
。
。
11.oracle环境变量(不同节点的oracle_id不同)
Suoracle
vi.bash_profile
exportORACLE_SID=T1(另一个T2)
exportORACLE_BASE=/honme/oracle
exportORACLE_HOME=/$ORACLE_BASE/product/10.2.0/db_1
exportCRS_HOME=$ORACLE_BASE/crs
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
exportPATH=$ORACLE_HOME/bin:
CRS_HOME/bin:
$PATH
12.存储
配置存储的环境,我没有按网上那样在虚拟机里边去加,这样做。
用的StarWind(openfiler相同)产品,它是基于Windows平台的,在磁盘上可以划分一块物理磁盘,或者划分一块磁盘内的区域来提供共享存储。
这款软件的安装、配置共享存储,到OracleRAC节点的挂载、裸设备的绑定,演示了整个RAC共享存储的配置。
配置比较简单。
。
。
。
。
。
省略。
。
。
。
。
。
挂载存储并划分空间(raw、asm)
12.1安装iscsi的rpm包(iscsi),可以在rhel5的镜像内找到,启动服务。
<每个节点>
12.2.探测主机server运行的共享存储标识target。
<每个节点执行一次>
12.3挂载
12.4fdisk–l验证
后面划分省略。
。
。
。
。
。
。
下面直接给结果。
配置完别一节点partprobe执行一行同步就可以。
。
。
Fuck。
。
。
。
配yum客户端路径写错了稿了20分中,记住。
。
。
。
15.配置row设置(两节点都执行)
Vi/etc/sysconfig/rawdevice
/dev/raw/raw1/dev/sdb1
/dev/raw/raw2/dev/sdb2
/etc/init.d/rawdevicesrestart
Assigningdevices:
/dev/raw/raw1-->/dev/sdb1
/dev/raw/raw1:
boundtomajor8,minor17(红色地方注意在写raw到配置文件,对号)
/dev/raw/raw2-->/dev/sdb2
/dev/raw/raw2:
boundtomajor8,minor18
更改权限
[root@rac1~]#chownoracle:
dba/dev/raw/raw[1-2]
[root@rac1~]#chmod660/dev/raw/raw[1-2]
由于rhel5取消了rawdevices,如果不想将映射命令放到rc.local中,就需要配置如下:
vi/etc/udev/rules.d/60-raw.rules
ACTION=="add",KERNEL=="/dev/sdb1",RUN+="/bin/raw/dev/raw/raw1%N"
ACTION=="add",ENV{MAJOR}=="8",ENV{MINOR}=="17",RUN+="/bin/raw/dev/raw/raw2%M%m"
ACTION=="add",KERNEL=="/dev/sdb2",RUN+="/bin/raw/dev/raw/raw2%N"
ACTION=="add",ENV{MAJOR}=="8",ENV{MINOR}=="18",RUN+="/bin/raw/dev/raw/raw2%M%m"
KERNEL=="raw[1-2]",OWNER="oracle",GROUP="oinstall",MODE="660"
重启服务
[root@rac1~]#start_udev
Startingudev:
[OK]
Chkcofig–listrawdevices要打开。
16.下载asm的包(要对应内核)
安装(两节点都执行。
)
配置asm。
(两个节点)
Error:
var/log/oracleasm
创建asm磁盘,以root用户在任何一节点上创建asm磁盘。
Failed是写错了,不管。
。
。
另一节点去扫描asm磁盘
17.执行runinstall安装。
开始安装,结束时会提示用root在每个节点上运行orainstRoot.Sh和root.Sh脚本,在第二个结点上运行root.Sh后自动调用vipca这个命令,在第二个结点运行root.Sh之前要修改一下vipca命令,不然会报错。
注意:
VIPCA命令也是用ROOT用户来运行的,只需要在一个结点运行就可以了。
进入$CRS_HOME/bin/目录,用vi来修改vipca和srvctl2个命令。
(两个都需要修改)
17.1vi/home/oracle/crs/bin/vipca
If[“$arch”=“i686”–o“$arch”=“ia64”]
Then
LD_ASSUME_KERNEL=2.4.19
Export_LD_ASSUME_KERNEL
fi
unsetLD_ASSUME_KERNEL(加这个)
17.2vi/home/oracle/crs/bin/srvctl
LD_ASSUME_KERNEL=2.4.19
Export_LD_ASSUME_KERNEL
unsetLD_ASSUME_KERNEL(加这个)
然后重新在节点2上重新执行/home/oracle/crs/root.sh:
[root@rac2~]#/home/oracle/crs/root.sh
WARNING:
directory'/home/oracle'isnotownedbyroot
CheckingtoseeifOracleCRSstackisalreadyconfigured
OracleCRSstackisalreadyconfiguredandwillberunningunderinit(1M)
无报错。
继续。
。
17.3此时在检查项会报错,去修改这个
改成自己对应的vip就可以了。
。
。
。
。
改成自己对应的vip就可以了。
。
。
。
。
图。
如完成检测,执行下一步完成安装。
17.4配置助手验证rac
$/home/oracle/product/crs/bin/olsnodes-n
rac1
rac2
或/home/oracle/crs/bin/cluvfystage–postcrsinstrac1或rac2
全部检查通过,才算没问题。
$ls-l/etc/init.d/init.*
-r-xr-xr-x1rootroot1951Oct414:
21/etc/init.d/init.crs*
-r-xr-xr-x1rootroot4714Oct414:
21/etc/init.d/init.crsd*
-r-xr-xr-x1rootroot35394Oct414:
21/etc/init.d/init.cssd*
-r-xr-xr-x1rootroot3190Oct414:
21/etc/init.d/init.evmd*
17.5检查CRS安装启动情况:
用Root用户执行:
$CRS_HOME/bin/crsctlcheckcrs
CSSappearshealthy
CRSappearshealthy
EVMappearshealthy
表明CRS安装完成,并且启动成功
[root@rac1bin]#./crs_stat-t-v
NameTypeR/RAF/FTTargetStateHost
----------------------------------------------------------------------
ora.rac1.gsdapplication0/50/0ONLINEONLINErac1
ora.rac1.onsapplication0/30/0ONLINEONLINErac1
ora.rac1.vipapplication0/00/0ONLINEONLINErac1
ora.rac2.gsdapplication0/50/0ONLINEONLINErac2
ora.rac2.onsapplication0/30/0ONLINEONLINErac2
ora.rac2.vipapplication0/00/0ONLINEONLINErac2
如果clusterware安装失败,再次运行安装程序,里面可以把之前的安装删除掉,删除之后在进行安装(最好一次性安装完成,如果返回安装出现一些问题。
。
。
。
自己就有过。
)
18.installOracle10gR2database
到database目录,执行./runinstaller。
安装和单环境的相同。
省略。
。
。
。
。
以oracle在任意节点执行netca命令,我在rac1。
。
。
Rac1node上运行netca
选择所有node
选择Listenerconfiguration
添加一个LISTENER,1521port,然后结束配置
监听配置成功后,2个结点上的Listener都会坐位ApplicationResource注册到CRS中,这样CRS就可以监控Listener的运行状态,通过crs_stat-t-v查看Listener状态。
OK
19.配置asm
以oracle运行dbca,还是在rac1
19.1运行DBCA命令
19.2选择configureAutomaticStorageManagement,来创建ASM实例
19.3选择所有结点
19.4输入密码。
RAC的spfile必须放在共享目录下。
参数文件我们选择第一个initializationparameter。
也可以放在建的裸设备上。
19.5修改asm参数:
asm_diskstring=ORCL:
VOL*,这样能让Oracle自动发现这些硬盘
19.6ASM实例创建完后,用CreateNew来创建ASM磁盘组。
我们用VOL1来创建一个DATA组,VOL2创建FLASH_RECOVERY_AREA组。
Redundancy一般选external就是也就是不考虑冗余,假如选normal则是mirror,至少要一个FailGroup.选High就是triplemirror,3倍镜像,需要三个FailGroup
20.创建数据库。
。
。
。
省略。
一些命令:
crsctlcheckcrs
检查rac状态。
crs_stat–t–v
检查rac资源状态。
在此处我运行时有问题,和在安装时候的一样(命令在下一页)
/oracle/app/oracle/product/10.2.0/db_1/jdk/jre/bin/java:
errorwhileloadingsharedlibraries:
libpthread.so.0:
cannotopensharedobjectfile:
Nosuchfileordirectory
问题原因
导致该问题的原因是,在部署安装rac时仅将clusterware软件目录下srvctl命令中的LD_ASSUME_KERNEL环境变量进行了注销处理,数据库软件安装目录下的srvctl未做相应调整。
因PATH环境变量设置顺序,数据库软件的srvc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle rac rawtest10g版 rawtest10g