Installing OracleRAC10gRelease2 on Linuxx86.docx
《Installing OracleRAC10gRelease2 on Linuxx86.docx》由会员分享,可在线阅读,更多相关《Installing OracleRAC10gRelease2 on Linuxx86.docx(20页珍藏版)》请在冰点文库上搜索。
InstallingOracleRAC10gRelease2onLinuxx86
InstallingOracleRAC10gRelease2onLinuxx86-64
1規劃
1.1硬件規劃
型號
每盤容量
磁盤數
RAID
總容量
陣列緩存
陣列
HDS
300G
12
1+0
1.8T
750M
硬件名程
服務器一
服務器二
服務器型號
HPDL380G5
HPDL380G5
CPU
數量
1
1
頻率
Xeon4核2.0G
Xeon4核2.0G
內存
16G
16G
1.2軟體規劃
服務器
RAC节点1
RAC节点2
電腦名程
MESDB01
MESDB02
OS
RedhatLinuxAs4U4(X64)
RedhatLinuxAs4U4(X64)
語言環境
英文
英文
域名服務
Hosts
Hosts
時區
中國
中國
安裝方式
安裝所有包
安裝所有包
系統用戶
ROOT
ROOT
Oracle安裝用戶
Oracle
Oracle
內置HDD
容量
146GX2
146GX2
Raid
Raid1
Raid1
內置HDD分區
Swap
32G
32G
/
60G
60G
保留
30G
30G
陣列盤區劃分
OCR(oracle集群注册表)
/dev/sda1OCFS21G
/dev/sda1OCFS21G
/dev/sdb2OCFS21G
/dev/sdb2OCFS21G
數據盤
/dev/sdc3OCFS31.77T
/dev/sdc3OCFS31.77T
目錄規劃
OracleBASE
/u01/oracle/
/u01/oracle/
OracleHome
/u01/oracle/product/10.2/db1/
/u01/oracle/product/10.2/db1/
ORA_CRS_HOME
/u01/oracle/product/10.2/crs1/
/u01/oracle/product/10.2/crs1/
集群软件CRS
/u02/ocr//u03/ocr/
/u02/ocr//u03/ocr/
表决磁盘
/u02/vot/votingdisk/u03/vot/votingdisk
/u03/vot/votingdisk/u02/vot/votingdisk
Oracledata
/u03/mes/
/u03/mes/
Oracle版本
10.2.0.4linuxX86_64
10.2.0.4linuxX86_64
RAC版本
10.2.0.1.0forlinuxX_64
10.2.0.1.0forlinuxX_64
數據塊大小
8K
8K
字符集
ZH16BIG5
ZH16BIG5
公共IPeth0
172.17.0.29/20
172.17.0.30/20
虛擬IPeth0
172.17.0.31/20
172.17.0.32/20
私有IPeth1
10.10.10.1/24
10.10.10.2/24
节点SID
MES1
MES2
RACSID
MES
數據庫監聽器
1521
表空間
依據現有表空間
2:
安装Linux
2.1在节点1安装操作系统
過程略,建議安裝所有包
必要的内核:
2.6.9-11.EL或者更高
检验内核的命令:
#uname-r
2.6.9-22.ELsmp
Otherrequiredpackageversions(orhigher):
binutils-2.15.92.0.2-10.EL4
compat-db-4.1.25-9
control-center-2.8.0-12
gcc-3.4.3-9.EL4
gcc-c++-3.4.3-9.EL4
glibc-2.3.4-2
glibc-common-2.3.4-2
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-9.EL4
libstdc++-devel-3.4.3-9.EL4
make-3.80-5
pdksh-5.2.14-30
sysstat-5.0.5-1
xscreensaver-4.18-5.rhel4.2
libaio-0.3.105-2.i386
libaio-0.3.105-2.x86_64
(注:
以上libaio32&64都必須安裝,缺一不可,否則建庫的時候會報錯)
2.2在节点2安装操作系统—同2.1
2.3检验安装包(分別在兩個节点完成),缺少的比要包需要重新安裝
#rpm-qbinutilscompat-dbcontrol-centergccgcc-c++glibcglibc-common\
gnome-libslibstdc++libstdc++-develmakepdkshsysstatxscreensaverlibaio
binutils-2.15.92.0.2-15
compat-db-4.1.25-9
control-center-2.8.0-12.rhel4.2
gcc-3.4.4-2
gcc-c++-3.4.4-2
glibc-2.3.4-2.13
glibc-common-2.3.4-2.13
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.4-2
libstdc++-devel-3.4.4-2
make-3.80-5
pdksh-5.2.14-30.3
sysstat-5.0.5-1
xscreensaver-4.18-5.rhel4.9
libaio-0.3.105-2.i386
libaio-0.3.105-2.x86_64
2.4安装网卡驱动以及HBA卡驱动
運行HPSmartstar光碟的autorun,選擇software下的安裝按鈕即可,安裝完畢後需要重新啟動電腦
3.配置Linux
3.1配置时钟同步
3.1.1在172.17.0.29节点上开启时钟服务,“applications(应用程序)”----->“systemsettings(系统设置)”----->“serversettings(服务设置)”----->“services(服务)”,如图
3.1.2在出来的”serviceconfiguration(服务配置)”中,选中“time、time-udp”,然后点击窗口工具栏中的“save(保存)”按钮,如图
3.1.3在172.17.0.30节点上创建一个shell文件,包含如下内容ntpdate172.17.0.29
#vi/etc/rdate
/rdate內容
ntpdate172.17.0.29
给于这个shell于执行权限
#chmod755/etc/rdate
3.1.4在172.1.0.30节点上,把该shell加入到调度中,让系统每6小时向172.1.0.29节点同步时钟,这里可以使用命令”crontab”,也可以使用图形界面在“applications(应用程序)”----->“systemtools(系统设置)”----->“taskscheduler(任务计划)”。
命令如下
#crontab–e
同样在编辑器里输入如下(我这里是每两个小时同步一次)
*/60****/etc/rdate
3.2分別在每个节点上创建ORACLE用户与DBA组
3.2.1groupadd–g1001dba
3.2.2groupadd–g1002oinstall
3.2.3useradd–u1001–goinstall–Gdbaoracle
3.2.4passwdoracle
3.3在每个节点执行如下命令
#chown–Roracle:
dba/home/oracle
3.4创建挂载点
确保用root用户来运行下面的命令:
mkdir-p/u01/oracle/product/10.2/db1
chown-Roracle:
oinstall/u01/oracle/product/10.2/db1
chmod-R777/u01/oracle/product/10.2/db1
mkdir-p/u01/oracle/product/10.2/crs1
chown-Roracle:
oinstall/u01/oracle/product/10.2/crs1
chmod-R777/u01/oracle/product/10.2/crs1
3.5修改每个节点系统内核参数./etc/sysctl.conf
kernel.shmall=2097152
kernel.shmmax=8401131520
kernel.shmmni=4096
kernel.sem=25032000100128
fs.file-max=131072
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
kernel.threads-max=131072
3.6设置每个节点ORACLE用户环境变量(修改ORACLE的.bash_profile)
su–oracle
vi.bash_profile
加入如下内容
umask=022
unsetUSERNAME
exportORACLE_BASE=/u01/oracle/
exportORACLE_HOME=/u01/oracle/product/10.2/db1/
exportORA_CRS_HOME=/u01/oracle/product/10.2/crs1/
exportORACLE_SID=mes1
exportPATH=$PATH:
$HOME/bin:
$ORACLE_HOME/bin:
$ORA_CRS_HOME/bin:
$ORA_CRS_HOME/OPatch:
$ORACLE_BASE/common/oracle/bin:
/usr/bin:
/usr/sbin:
/usr/local/bin:
/usr/X11R6/bin:
/tmp/OPatch
exportORACLE_PATH=$ORACLE_BASE/common/oracle/sql:
$ORACLE_HOME/rdbms/admin
exportORACLE_TERM=xterm
exportTNS_ADMIN=$ORACLE_HOME/network/admin
exportORA_NLS10=$ORACLE_HOME/nls/data
exportLD_LIBRARY_PATH=$ORACLE_HOME/lib
exportLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:
$ORACLE_HOME/oracm/lib
exportLD_LIBRARY_PATH=${LD_LIBRARY_PATH}:
/lib:
/usr/lib:
/usr/local/lib
exportCLASSPATH=$ORACLE_HOME/JRE
exportCLASSPATH=${CLASSPATH}:
$ORACLE_HOME/jlib
exportCLASSPATH=${CLASSPATH}:
$ORACLE_HOME/rdbms/jlib
exportCLASSPATH=${CLASSPATH}:
$ORACLE_HOME/network/jlib
exportTHREADS_FLAG=native
exportTEMP=/tmp
exportTMPDIR=/tmp
注意:
在节点mes2上,ORACLE_SID应该变为mes2
3.7为oracle用户设置Shell的限制
Oracle建议设置进程的限制数和每个Linux账户的openfiles数。
用root用户运行下面的命令。
/etc/security/limits.conf
oraclesoftnproc2047
oraclehardnproc16384
oraclesoftnofile1024
oraclehardnofile65536
/etc/pam.d/login
sessionrequired/lib/security/pam_limits.so
/etc/profile
if[\$USER=“oracle”];then
if[\$SHELL=“/bin/ksh”];then
ulimit-p16384
ulimit-n65536
else
ulimit-u16384-n65536
fi
umask022
fi
3.8配置每个节点的/etc/hosts文件
配置Oracle用户和用户组
内容如下:
127.0.0.1localhost
172.17.0.29mesdb01
172.17.0.31mesdb01-vip
10.10.10.1mesdb01-priv
172.17.0.30mesdb02
172.17.0.32mesdb02-vip
10.10.10.2mesdb02-priv
3.9配置每个节点的hangcheck_timer内核:
在/etc/modprobe.conf中添加以下行,以设置hangcheck内核模块参数。
/etc/modprobe.conf
optionshangcheck-timerhangcheck_tick=30hangcheck_margin=180
要立即加载模块,执行“modprobe-vhangcheck-timer”。
检查是否成功启动
#grephangcheck/var/log/messages|tail-2
3.10为OCFS2和OracleASM创建磁盘分区
fdisk/dev/sda
n
p
1
W
fdisk/dev/sdb
n
p
1
W
fdisk/dev/sdc
n
p
1
W
3.11配置SSH
以oracle用户身份执行,
在mesdb01上执行
mesdb01->mkdir~/.ssh
mesdb01->chmod700~/.ssh
mesdb01->ssh-keygen-trsa
mesdb01->ssh-keygen-tdsa
在mesdb02上执行
mesdb02->mkdir~/.ssh
mesdb02->chmod700~/.ssh
mesdb02->ssh-keygen-trsa
mesdb02->ssh-keygen-tdsa
在mesdb01上执行
mesdb01->cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
mesdb01->cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
mesdb01->sshmesdb02cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
mesdb01->sshmesdb02cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
mesdb01->scp~/.ssh/authorized_keysmesdb02:
~/.ssh/authorized_keys
在每个节点上执行如下命令以测试连通性,并建立SSH信任关系
$sshmesdb01date
$sshmesdb02date
$sshmesdb01-privdate
$sshmesdb02-privdate
4.配置共享磁盘
4.1获得OCFS2
OCFS2可以免费获得,包括三个RPM:
一个kernelmodule,supporttools,和console。
各个Linux支持的kernel版本不同,所以要确认获得合适的kernel。
OCFS2kernelmodules可以在下面的连接下载
为了确认kernel的版本,你可以运行如下命令:
#uname-r
2.6.9-42.ELsmp
例如我下载了:
ocfs2console-1.2.7-1.el4.x86_64.rpm
ocfs2-tools-1.2.7-1.el4.x86_64.rpm
ocfs2-2.6.9-42.ELsmp-1.2.9-1.el4.x86_64.rpm
4.2在每个节点用root安装OCFS2:
#rpm-ivhocfs2console-1.2.7-1.el4.x86_64.rpm\
ocfs2-tools-1.2.7-1.el4.x86_64.rpm\
ocfs2-2.6.9-42.ELsmp-1.2.9-1.el4.x86_64.rpm
Preparing...###########################################[100%]
1:
ocfs2-tools###########################################[33%]
2:
ocfs2console###########################################[67%]
3:
ocfs2-2.6.9-42.ELsmp###########################################[100%]
4.3配置OCFS2
用root运行ocfs2console:
#ocfs2console
1.OCFS2控制台:
选择Cluster,然后选择ConfigureNodes。
2.“集群堆栈已经启动”:
单击Close。
3.节点配置:
单击Add。
4.新增节点:
添加以下节点,然后单击Apply。
名称:
mesdb01
IP地址:
172.17.0.29
IP端口:
7777
名称:
mesdb02
IP地址:
172.17.0.30
IP端口:
7777
将配置文件传播到mesdb02。
在mesdb01的OCFS2控制台上选择Cluster和PropagateConfiguration以将配置文件传播到mesdb02。
4.4在系统启动时激活OCFS2:
以root用户身份执行
#/etc/init.d/o2cbunload
#/etc/init.d/o2cbconfigure
ConfiguringtheO2CBdriver.
Thiswillconfiguretheon-bootpropertiesoftheO2CBdriver.
Thefollowingquestionswilldeterminewhetherthedriverisloadedon
boot.Thecurrentvalueswillbeshowninbrackets(‘[]’).Hitting
withouttypingananswerwillkeepthatcurrentvalue.Ctrl-C
willabort.
LoadO2CBdriveronboot(y/n)[y]:
y
Clustertostartonboot(Enter“none”toclear)[ocfs2]:
Specifyheartbeatdeadthreshold(>=7)[7]:
61
WritingO2CBconfiguration:
OK
Loadingmodule“configfs”:
OK
Mountingconfigfsfilesystemat/config:
OK
Loadingmodule“ocfs2_nodemanager”:
OK
Loadingmodule“ocfs2_dlm”:
OK
Loadingmodule“ocfs2_dlmfs”:
OK
Mountingocfs2_dlmfsfilesystemat/dlm:
OK
StartingO2CBclusterocfs2:
OK
4.5格式化文件系统。
在格式化和挂载文件系统之前,应验证O2CB在两个节点上均联机;O2CB心跳当前没有活动,因为文件系统未挂载。
#/etc/init.d/o2cbstatus
Module“configfs”:
Loaded
Filesystem“configfs”:
Mounted
Module“ocfs2_nodemanager”:
Loaded
Module“ocfs2_dlm”:
Loaded
Module“ocfs2_dlmfs”:
Loaded
Filesystem“ocfs2_dlmfs”:
Mounted
CheckingO2CBclusterocfs2:
Online
CheckingO2CBheartbeat:
Notactive
4.6创建一个OCFS文件系统的挂载点
用root在每个节点运行,创建OCFS2文件系统挂载点目录。
#
#mkdir/u02
#mkdir/u03
一下在一個节点上完成
#mkfs.ocfs2-b4K-C32K-N4-L/u02/dev/sdb1
#mkfs.ocfs2-b4K-C32K-N4-L/u03/dev/sda1
4.7装载OCFS2文件系统((在兩個节点上完成)
mount-tocfs2-odatavolume/dev/sda1/u03
mount-tocfs2-odatavolume/dev/sdb1/u02
检验OCFS2文件系统的加载,允许mount命令或者df:
#mount-tocfs2
下面在其它节点加载OCFS2文件系统.
为了在启动的时候自动的加载OCFS2文件,在每个节点的/