大概步骤:
1. 2台服务器, 双网卡,都手动指定IP
2. 在HOSTS文件写好公有、私有及虚拟IP
3. 创建ORACLE账号、OINSTALL组、DBA组,2者用户属组信息要一致
4. 2者配置内核挂起检测模块HANGCHECK-TIMER
5. 配置2者ORACLE账号信任关系 公钥和私钥的建立并测试连接
6. 局域网内搭建一台NTP服务器,2者连接实现时间同步
7. 连接共享存储设备分配空间/DEV/RAW/RAW1 /DEV/RAW/RAW2
8. 解压CLUSTERWARE软件包,到软件目录下以ORACLE身份运行/RUNCLUVFY.SH来校验安装可行性,将相关软件包都补齐
9. 安装CLUSTER,其中将OCR放/DEV/RAW/RAW1,VOTING DISK放/DEV/RAW/RAW2
10. 安装完后到$CRS_HOME/BIN下运行/VIPCA,设置VIP
11. 完成后执行/CRS_STAT –T 看2者VIP,GSD,ONS进程是否正常启动
12. CRS安装完成
13. 接着运行数据库软件包执行安装数据库软件
14. 安装完成后将CRS停止./CRSCTL STOP CRS,然后解压P8202632_10205补丁包安装升级补丁
15.完成运行DBCA,安装数据库,选择集群模式,存储选择ASM,创建磁盘组,直到完成
16. 数据库安装完成
17. 集群安装完成
第一步:
.创建虚拟机,创建目录rac1 ,rac2 ,share用于放磁盘
创建rac1,创建虚拟机时磁盘14g,scsi 0:0 再增加一个网卡,
,创建第一块共享磁盘0.5G,ocr.vmdk SCSI 1:0
创建第二块共享磁盘0.5G,voting.vmdk SCSI 1:1
创建第三块共享磁盘3G,asm1.vmdk SCSI 1:2
创建第四块共享磁盘3G,asm2.vmdk SCSI 1:3
创建第五块共享磁盘3G,asm3.vmdk SCSI 1:4
创建第六块共享磁盘3G,asm4.vmdk SCSI 1:5
这一步也够折腾人的,用vm server2.0.2 的创建虚拟机会自动创建跟虚拟机名字的目录,所以先不要创建rac1目录,不然会自动创建一个rac1_1的目录
2.安装linux
安装好linux后,退出安装光盘,安装VMtool,VM-vmtool,双击vmware包
两个网卡的IP:eth0:192.168.1.103 eth1:192.168.0.103
# vmware-config-tools.pl
2 800*600
SecureCRT连接上:
安装ORACLE之前,要安装RPM包
图片插补进来唉
rpm -ivh *.rpm
查看rpm包的安装情况
rpm -qa | grep gcc
vi /etc/hosts
增加以下信息:
127.0.0.1 localhost.lzy.com localhost
#public
192.168.1.103 rac1.lzy.com rac1
192.168.1.104 rac2.lzy.com rac2
#private
192.168.2.103 rac1-priv.lzy.com rac1
192.168.2.104 rac2-priv.lzy.com rac2
#vip
192.168.1.111 rac1-vip.lzy.com rac1
192.168.1.112 rac2-vip.lzy.com rac2
vi /etc/sysctl.conf
增加内核参数
/sbin/sysctl -p 内核参数生效
vi /etc/security /limits.conf
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536
vi /etc/pam.d/login
ession required /lib/security/pam_limits.so
cat /etc/selinux/config
SELINUX=disable
service iptables status 防火墙是否关闭
vi /etc/modprobe.conf
options hangcheck-timer hangcheck_tick=30 hangcheck_margin=180
modprobe -v hangcheck-timer
groupadd oinstall
groupadd dba
useradd -g oinstall G dba oracle
passwd oracle
mkdir -p /oracle/product/10.2.0/crs
mkdir -p /oracle/product/10.2.0/asm
mkdir -p /oracle/product/10.2.0/db_1
chown -R oracle:oinstall /oracle
ls -l
rsh on
rlogin on
service xinetd reload
su - oracle
vi .bash_profile
#Oracle Settings
export PS1=" ‘/bin/hostname –s’ -> "
export EDITOR=vi
export TMP=/tmp
export TMPDID=$TMP
export ORACLE_BASE=/oracle
export ASM_HOME=/oracle/product/10.2.0/asm
export ORACLE_CRS_HOME=/oracle/product/10.2.0/crs
export ORACLE_HOME=/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl1
export PATH=$ORACLE_HOEM/bin:$ORACLE_CRS_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/bin:/lib:/usr/slib:$PATH
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
alias sqlplus="rlwrap sqlplus"
alias rman="rlwrap rman"
stty erase ^H
umask 022
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
source .bash_profile
关机:
su -
init 0
修改虚拟机的vmx文件
disk.locking = "FALSE"
diskLib.dataCacheMaxSize = "0"
scsi1.sharedBus = "virtual"
scsi1:0.mode的下面一行
scsi1:0.deviceType = "disk"
scsi1:1.deviceType = "disk"
scsi1:2.deviceType = "disk"
scsi1:3.deviceType = "disk"
scsi1:4.deviceType = "disk"
scsi1:5.deviceType = "disk"
rac1目录下的内容,复制一份到rac2目录,然后同时打开rac1,rac2
对rac2进行适当 的修改,网卡,机器名
配置时间服务器
rac1
# chkconfig ntpd on
service ntpd status
service ntpd start
rac2
启动xmanager passive
export DISPLAY=192.168.1.100:0.0
system-config-date
设置rac1为时间服务器
Enable NetWork Time Protocol 先上
server 192.168.1.100
vi /etc/rc.local
while [ 1 ] ; do ntpdate rac1 1>/dev/null 2>&1; sleep 2; done &
rac1
建立ssh有效性
su - oracle
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
ssh-keygen -t dsa
rac2
su - oracle
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
ssh-keygen -t dsa
rac1
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
ssh rac2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
ssh rac2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
scp ~/.ssh/authorized_keys rac2:~/.ssh/authorized_keys
测试SSH等效性:
ssh rac1 date
ssh rac2 date
ssh rac1.**e.com date
ssh rac2.**e.com date
ssh rac1-priv date
ssh rac2-priv date
ssh rac1-priv.**e.com date
ssh rac2-priv.**e.com date
rac2
ssh rac1 date
ssh rac2 date
ssh rac1.**e.com
ssh rac2.**e.com
ssh rac1-priv date
ssh rac2-priv date
ssh rac1-priv.**e.com date
ssh rac2-priv.**e.com date
rac2ntpd关闭
su -
service ntpd status
service ntpd stop
---******************备份***********************************
rac1
su - oracle
exec /usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add
rac2
su - oracle
exec /usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add
rac1
配置裸设备服务,oracle用户要有权限
修改裸设备配置文件
vi /etc/sysconfig/rawdevices
#两个512M的磁盘
/dev/raw/raw1 /dev/sdb1
/dev/raw/raw2 /dev/sdc1
:wq
配置权限
vi /etc/udev/permissions.d/50-udev.permisssions
#raw devices
#raw /*:root.:disk:0660
raw/*:oracle:dba:0660
:wq
chkconfig --list rawdevices
service rawdevices restart
检查权限oracle,dba
cd /dev/raw
ll
rac2
配置裸设备服务,oracle用户要有权限
修改裸设备配置文件
vi /etc/sysconfig/rawdevices
/dev/raw/raw1 /dev/sdb1
/dev/raw/raw2 /dev/sdc1
:wq
配置权限
vi /etc/udev/permissions.d/50-udev.permisssions
#raw devices
#raw /*:root.:disk:0660
raw /*:oracle:dba:0660
:wq
chkconfig --list rawdevices
service rawdevices restart
检查裸设备的权限
cd /dev/raw
ll
创建ASM磁盘:
两个节点都安装RPM三个ASM包
查看Linux内核
uname -rm
下载ASM三个包
cd /asmrpm
rpm -ivh *.rpm
rpm -qa | grep oacleasm
两个节点都安装好ASM包
rac1 创建ASM磁盘
/etc/init.d/oracleasm configure
oracle
dba
y
y
检测ASM驱动是否加载l
1.lsmod | grep asm
2.cat /proc/filesystems
3.df -ha
创建ASM磁盘:
/etc/init.d/oracleasm createdisk VOL1 /dev/sdd1
/etc/init.d/oracleasm createdisk VOL2 /dev/sde1
/etc/init.d/oracleasm createdisk VOL3 /dev/sdf1
/etc/init.d/oracleasm createdisk VOL4 /dev/sdg1
检查创建是否成功
cd /dev/oracleasm/disks
ll
/etc/init.d/oracleasm listdisks
/dtc/init.d/oracleasm querydisk VOL1
rac2创建ASM磁盘
/etc/init.d/oracleasm scandisks
/etc/init.d/oracleasm listdisks
配置ASM磁盘
/etc/init.d/oracleasm configure
oracle
dba
y
y
/etc/init.d/oracleasm scandisks
/etc/init.d/oracleasm listdisks
---------------------*******备份 *********************
6.下载安装oracle clusterware
chown -R oracle:oinstall clusterware
chown -R oracle:oinstall database
rac1
chmod -R 775 /oracle
rac2
cd /oracle
ls -l
chmod -R 775 /oracle
rac1 安装clusterware
su - oracle
export DISPLAY=172.30.0.32:0.0
exec /usr/bin/ssh-agent $SHELL
/usr/bin/ssh-add
cd /oracle/clusterware
检测环境是否可以安装clusterware
/oracle/clusterware/cluvfy/runcluvfy.sh stage -pre crsinst -n rac1,rac2
cd /oracle/clusterware
./runInstaller
path :/oracle/ ...../crs
Specify Cluster Configuration
add
rac2.**e.com
rac2-priv.**e.com
rac2-vip.**e.com
Specify Network Interface Usage
eth0 public
OCR: extend : /dev/raw/raw1
Voting Disk Congfiguration
extend : /dev/raw/raw2
以root用户:执行两个脚本: /oracle/oraInventory/orainstRoot.sh
/oracle/product/10.2.0/crs/root.sh
如果报错:
解决eth0 is not public .
export DISPLAY=172.30.0.32:0.0
/oracle/product/10.2.0/crs/bin/vipca
eth0 rac1 : rac1-vip.**e.com
rac2 : rac2-vip.**e.com
rac1:
安装好后:
crs_stat -t
rac2
crs_stat -t
------------------****************备份***********************************
rac1
7.单独安装ASM ASM管理多实例
便于升级
cd /oracle/database
export DISPLAY=172.30.0.32:0.0
./runInstaller
specify home details
OraASM10g_home1
/oracle/product/10.2.0/asm
Cluster Installation
rac1
rac2
Select Configuration Option
configure ASM
Configure automatic storage managerment
data
normal
选择orcl:vol1
orcl:vol2
执行脚本:完成安装
安装数据库软件:
./runInstaller
选 Install database software only
执行脚本:安装完成
rac1:
配置:listener
netca
crs_stat -t 查看listener
rac2
crs_stat -t
创建另一个ASM磁盘组
dbca
configure ASM
select rac1 rac2
create new
create disk group
RECOVERY
normal
orcl:vol3
orcl:vol4
创建数据库
dbca
select rac1 rac2
gobal service name:test1
available asm
data
use oracle-manage files
不创建 database service
创建好后检查状态
rac1
crs_stat -t
crs_stat -t -v
rac2
crs_stat -t
crs_stat -t -v
rac1
stat nnodeapps -n rac1
stat nnodeapps -n rac2
srvctl status asm -n rac1
srvctl status asm -n rac2
srvctl status database -d firstrac
crsctl check crs
sqlplus /nolog
conn /as sysdba
select instance_name,host_name ,archiver,thread# ,status from gv$instance;
exit;
sqlplus system/oracle@testrac1
sqlplus system/oracle@testrac2
sqlplus system/oracle@testrac
export ORACLE_SID=testrac1
sqlplus /as sysdba
show sga
select file_name from dba_datafiles;
exit
export ORACLE_SID=+ASM1
sqlplus / as sysdba
show sga
启动数据库
$srvctl start nodeapps -n rac1
$srvctl start nodeapps -n rac2
$srvctl start asm -n rac1
$srvctl start asm -n rac2
$srvctl start instance -d racdb -i racdb1
$srvctl start instance -d racdb -i racdb2
可以用以下方动启动crs:
$/etc/init.d/init.cssd start
$/etc/init.d/init.crs start
rac1-> ./init.crs start
Startup will be queued to init within 90 seconds.
rac1-> ./init.cssd start
Startup will be queued to init within 90 seconds.
rac1 -> crs_start -f ora.rac1.gsd
CRS-1028: Dependency analysis failed because of:
'Resource in UNKNOWN state: ora.rac1.gsd'
CRS-0223: Resource 'ora.rac1.gsd' has placement error.
两节点的时间不一样,安装节点的时间必须小于另外节点
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26879006/viewspace-721253/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/26879006/viewspace-721253/