srvctl stop nodeapps -n dss-db32 //停132.63.10.34 instance
srvctl stop nodeapps -n dss-db42 //停132.63.10.35 instance
srvctl stop database -d ctgdw -o immediate //停ctgdw数据库
132.63.10.35 oracle用户
crs_stat -t -v 查看是否都已offline
132.63.10.34 root用户:
cd /oracle/crs/product/10.2.0/bin
./crsctl stop crs //停集群服务
在.34上操作的过程中
132.63.10.35 oracle用户:
ps -ef |grep oracle
ps -ef |grep crs
查看oracle和crs进程
启
132.63.10.34 root用户:
cd /oracle/crs/product/10.2.0/bin
./crsctl start crs
完成后
ps -ef |grep oracle
ps -ef |grep crs
查看进程
crs_stat -t -v 监控所有进程是否都为online
如果没启动
srvctl start database -d ctgdw
srvctl start nodeapps -n dss-db32
srvctl start nodeapps -n dss-db42
或者
$ srvctl stop listener -n host1(在节点1上停止监听)
$crs_stat -t 查看是否全是OFFLINE
root用户执行:# crsctl stop crs
init 0或 init 6
$ crs_start –all
$ crs_stat -t
crs命令用法
$ORA_CRS_HOME/log/节点主机名(rachost01)/crsd
$ORA_CRS_HOME/crs/init
$ORA_CRS_HOME/css/log
$ORA_CRS_HOME/css/init
$ORA_CRS_HOME/evm/log
$ORA_CRS_HOME/evm/init
$ORA_CRS_HOME/srvm/log
3.5 为ORACLE RAC增加一个节点
这部分详细步骤请参考Metalink Note 270512.1
为RAC添加节点,主要分为一下几个大的步骤:
A. 按照第二章《安装oracle RAC前的准备》配置新节点的OS和硬件环境。
B. 增加一个节点到cluster中。
C. 增加RAC软件到新的节点。
D. 为新的节点重新配置listeners。
E. 使用DBCA增加实例。
下面是详细的步骤
A. 按照第二章《安装oracle RAC前的准备》配置新节点的OS和硬件环境。
B. 增加一个节点到cluster中。
1、在oracle用户下,设置DISPLAY环境变量,运行在$ORA_CRS_HOME/oui/bin 目录下的addNode.sh
$ DISPLAY=ipaddress:0.0; export DISPLAY $ cd $ORA_CRS_HOME/oui/bin $ ./addNode.sh |
3. 当OUI出现欢迎界面点击next.
4. 在 "Specify Cluster Nodes to Add to Installation" 节面, 增加一个公用IP对应的主机名和私有IP对应的主机名(与/etc/hosts中的记录一样)点击next.
5. 出现"Cluster Node Addition Summary"界面, 点击 next.
6. 出现"Cluster Node Addition Progress" 出现. 将会提示以root用户运行
ORACLE 10G RAC 参考手册 69
rootaddnode.sh。但是首先需要确认在rootaddnode.sh中的CLSCFG信息是正确的。应该是包含新的公有和私有IP对应的主机名。
比如:
$CLSCFG -add -nn <node2>,2 -pn <node2-private>,2 -hn <node2>,2 |
确认好以后,运行rootaddnode.sh script
$ su root $ cd $ORA_CRS_HOME $ sh -x rootaddnode.sh |
执行完以后,点击OK 继续。
7. 之后,另一个对话框会出现。需要所有的节点上执行$ORA_CRS_HOME/root.sh。
$ su root $ cd $ORA_CRS_HOME $ sh -x root.sh |
完成以后, 点击OK继续。
8. 在所有的新节点上运行完root.sh后, 在任意一个节点上运行
$ORA_CRS_HOME/bin/racgons add_config <newnode1>:4948 <newnode2>:4948 |
9. 安装结束。
C. 增加Oracle Database software (with RAC option) 到新的节点
1. 在原来的db节点上,进入到$ORACLE_HOME/oui/bin目录,运行addNode。
$ DISPLAY=ipaddress:0.0; export DISPLAY $ cd $ORACLE_HOME/oui/bin $ ./addNode.sh |
2. OUI欢迎界面又出现了,点击next。
3. 在 "Specify Cluster Nodes to Add to Installation" 界面,指定你想加入的节点,点击next。
4. "Cluster Node Addition Summary" 界面出现, 点击next。
5. 然后进入到 "Cluster Node Addition Progress"界面.提示你以root的身份运行root.sh。
ORACLE 10G RAC 参考手册 70
$ su root $ cd $ORACLE_HOME $ ./root.sh |
执行完成以后, 点击OK继续。
6. 安装完成,exit安装界面
7. 然后以root身份进入到$ORACLE_HOME/bin目录,运行vipca
$ su root $ DISPLAY=ipaddress:0.0; export DISPLAY $ cd $ORACLE_HOME/bin $ ./vipca -nodelist <node1>,<node2> |
8. VIPCA欢迎界面出现,点击 next。
9. 增加新的节点的vip信息点击next。
10. 看到 "Summary" 界面以后, 点击finish.
11. 然后我们将看到创建和启动新的CRS资源,然后点击退出。
12. 确认interconnect是否正确,使用:
$ oifcfg getif |
如果不正确,使用oifcfg命令修改:
$ oifcfg setif <interface-name>/<subnet>:<cluster_interconnect|public> |
例子:
$ oifcfg setif -global eth1/10.10.10.0:cluster_interconnect |
或者
$ oifcfg setif -node <nodename> eth1/10.10.10.0:cluster_interconnect |
D. 为新节点重新配置listeners
1、使用netca来配置。过程与一般的创建RAC的listener一致。
2、 使用 crs_stat命令确认listener CRS资源是否被创建了。
3、 新增加的listener应该是offline的。使用srvctl命令启动这个节点上的nodeapps。
$ srvctl start nodeapps -n <newnode> |
ORACLE 10G RAC 参考手册 71
4、 再次使用crs_stat 确定VIP's, GSD's, ONS's, and listeners等CRS资源是online的。
E. 通过DBCA增加一个新的实例. (对于standby 请看F)
1. 使用DBCA在原来的节点上创建一个新的实例。
$ DISPLAY=ipaddress:0.0; export DISPLAY $ dbca |
2. 在欢迎界面选择"Oracle Real Application Clusters",点击next。
3. 选择 "Instance Management",点击next.
4. 选择"Add an Instance", 点击next.
5. 选择你想加入新的实例的数据库,并且指定sysdba权限的用户。点击next。
6. 选择正确的实例名和节点,点击next。
7. 在存储界面直接点击next。
8. 到了 summary界面, 点击OK。开始创建新的实例
9. 完成以后,选择"No" 退出 DBCA.
10. 通过查询gv$instance,确认实例是否创建成功。
F. 添加一个实例到Standby数据库
1、在你的DataGuard中,如果你的主节点是RAC,那么要保证在E中的步骤都已经执行过了。如果你的主节点是单实例。那么增加redolog组和threads (使用alter database)。
SQL>alter database add logfile thread 2 group 3 ('/dev/rzj_redo2_5_120m ') size 120M, group 4 ('/dev/rzj_redo2_6_120m ') size 120M; SQL>alter database enable public thread 2; |
2、在主节点上创建一个新的standby控制文件,并copy这个控制文件到standby。
SQL>alter database create standby controlfile as "/opt/app/oracle/stby.ctl" |
3、关闭standby数据库, 备份现在standby数据库上控制文件,然后用新的standby控制
ORACLE 10G RAC 参考手册 72
文件来替换。
4、 调整新实例的init.ora或者spfile的参数,比如:thread, instance_name,instance_number, local_listener, undo_tablespace等等。
5. 最后恢复standby数据。
3.6 升级ORACLE RAC
如果升级oralce的RAC或者oracle最好在建库之前来做。这样比较简单。
以10.2.0.3为例
在建库之前的方法:
Upgrading Oracle Clusterware Installation
1 以root身份登录,执行xhost +
2 停止 Oracle Clusterware:
crsctl stop crs
3 在其余的节点上重复 1 和 2.
4 回到第一个节点,以oracle用户登录。.
5 在一个终端输入:
export ORACLE_HOME=/crs/oracle/product/10.2.0/crs --假设你的crs的home是这个。
6 进入到patch的目录:
cd /opt/oracle/patches/Disk1/
./runInstaller
然后
7 出现 Welcome界面.
Click Next.
8 在 Specify Home Details 界面, click Next.
9 在Hardware Cluster Installation Mode 界面, click Next.
10 在the Summary 界面, click Install.
11 NOTE: 安装完成以后不要点击exit推出。
12 再打开一个终端.
13 以 root 登录.
14 进入CRS_HOME,执行如下操作。
$ORA_CRS_HOME/install/root102.sh
15 在其他节点上按顺序重复12-14
16 在第一个节点上,点击exit推出安装。.
Upgrading the RAC Installation
ORACLE 10G RAC 参考手册 73
1 在第一个节点打开一个终端.
2 以oracle登录.
3 停止所有节点Oracle Clusterware node applications.
$ORACLE_HOME/bin/srvctl stop nodeapps -n <nodename>
NOTE: 如果有报错。忽略掉
4 可以在其他节点上重复3也可以在一个节点上改变nodename停止nodeapps.
5 在第一个节点上以oracle登录。打开一个终端
6 设置ORACLE_HOME:
export ORACLE_HOME=/opt/oracle/product/10.2.0/db_1 --你的ORACLE_HOME
7 然后启动补丁程序:
cd /opt/oracle/patches/Disk1/
./runInstaller
8 Welcome 界面出现.
9 点击Next.
10 在Specify Home Details 界面, 点击Next.
11 在Specify Hardware Cluster Installation Mode 界面, 点击 Next.
12 在 the Summary 界面, 点击Install.
安装快完成时提示 run root.sh as user root.
13 打开一个终端.
14 执行:
/opt/oracle/product/10.2.0/db_1/root.sh
15 在其余的节点上按顺序重复13-14
16 执行完以后,点击 Exit推出.
17 然后在第一个节点上打开一个终端。
18 以oracle用户登录.
19 执行:
srvctl start nodeapps -n <nodename>
20 如果一切正常,nodeapps都会online。
(如果对于已经建完库或者生产系统的补丁。方法大致一样。但是需要先停止nodeapps和instance。执行完上面的步骤以后,还要使用dbua来升级数据库。具体可以参考patch的README。)
To be continue…..