最好先删除坏掉的节点信息,然后加入新的,否则加入新的几点会不断报错。
1. 注意,下列操作均是在确实要保留的实例上进行,不要选择在要被删除的节点上进行操作;作业请做好备份工作。
2. 這裡節點2出現問題,正常關閉后已經下線,但是節點2的VIP漂移到了節點1上 。
3. 刪除數據庫實例: 在節點1上dbca 刪除節點2的實例(雖然節點2 Server已經關閉)。
4. 选择RAC database,选择Instance Management,Delete Instance,
5. 选择要操作的数据库,并输入一个具有sysdba权限的用户及密码
6. 选择一个要删除的实例,这里是mxdell2
7. 确定删除点击OK,接下来可能會跳出一些窗口,如果非報錯,同样直接点击OK即可
8. 开始进行删除操作
9. 删除ASM实例,這里沒有使用ASM,所以不用這一步。
10. 在節點1上 $ crs_stat -t 查看一下,節點2上實例已經不存在。
11. 刪除節點信息: 刪除節點2的監聽服務,在節點1上執行netca .
12. 停止目標節點apps : 在節點1上執行 srvctl stop nodeapps -h
13. 刪除目標節點2數據庫軟件, 更新Oracle Inventory, [oracle@node1]$ $ORACLE_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME
"CLUSTER_NODES=mxrac01,mxrac03"
14. 接下来在要被删除的节点上执行下列命令,同样是更新Oracle Inventory, 這裡節點2已經不再了,就不用執行了。
[oracle@mxrac02]$
$ORACLE_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORACLE_HOME ""CLUSTER_NODES=mxrac02"" -local "
15. 然后就可以在節點2删除该节点上的数据库软件了(注意選擇ORACLE軟件,不是crs哦),這裡節點2是關閉的,所以不需要執行刪除。
[oracle@mxrac02]$
$ORACLE_HOME/oui/bin/runInstaller -deinstall "
16. 删除ONS配置: 在保留節點1上執行
[oracle@mxrac01]$ $ORA_CRS_HOME/bin/racgons remove_config mxrac02:6200 "
"删除节点2 CRS 服务,进入/u01/product/crs/install 目录,执行rootdelete.sh
[root@rac2 install]# ./rootdelete.sh (在删除节点运行)"
17. 删除NodeApps,在保留節點1上執行, 以root身份執行 :
[root@mxrac01]# /u01/product/crs/bin/srvctl remove nodeapps -n maxrac02
Please
confirm that you intend to remove the node-level applications on node mxrac02 (y/[n]) y "
18. 执行完上述命令后,返回oracle用户,执行crs_stat查看当前应用的状态,可以看到節點2的信息已經都不存在了。
"19. 删除目标节点clusterware软件, 這裡就是選擇crs了,在存在的節點1上執行:
[oracle@mxrac01]$ $ORA_CRS_HOME/oui/bin/runInstaller -
updateNodeList ORACLE_HOME=$ORA_CRS_HOME ""CLUSTER_NODES=mxrac01,mxrac03"" CRS=TRUE "
"20. 然后切换至目标节点2,执行更新Oracle Inventory的操作, 由於節點2已經關機,所以這裡不用執行。
[oracle@mxrac02]$
$ORA_CRS_HOME/oui/bin/runInstaller -updateNodeList ORACLE_HOME=$ORA_CRS_HOME ""CLUSTER_NODES=mxrac02"" CRS=TRUE -local "
"21. 接下来在目標節點2执行runInstaller -deinstall命令,执行clusterware软件的删除操作(注意是在视窗界面操作):
[oracle@mxrac02]$
$ORA_CRS_HOME/oui/bin/runInstaller -deinstall ,這裡由於節點2已經關閉,所以不用執行。"
22. 从OCR中删除节点信息:
[oracle@jssdbn1 ~]$ cd $ORA_CRS_HOME/bin
[oracle@jssdbn1 bin]$ ./olsnodes -n -i
mxrac01 1 mxrac01-vip
mxrac02 2
mxrac03 3 mxrac03-vip
儘管通过前面的操作,ORACLE软件以及集群件均已被删除,节点信息也更新过了,不过OCR中还是保留有mxrac02 节点的信息,因此这块也需要删除,执行脚本如
下:
[root@jssdbn1 ~]# cd /data/ora10g/product/10.2.0/crs_1/install
[root@jssdbn1 install]# ./rootdeletenode.sh jssdbn3,3
CRS-0210: Could not find resource ¨ora.jssdbn3.LISTENER_JSSDBN3.lsnr¨.
CRS-0210: Could not find resource ¨ora.jssdbn3.ons¨.
CRS-0210: Could not find resource ¨ora.jssdbn3.vip¨.
CRS-0210: Could not find resource ¨ora.jssdbn3.gsd¨.
CRS-0210: Could not find resource ora.jssdbn3.vip.
CRS nodeapps are deleted successfully
clscfg: EXISTING configuration version 3 detected.
clscfg: version 3 is 10G Release 2.
Successfully deleted 14 values from OCR.
Key SYSTEM.css.interfaces.node mxrac02 marked for deletion is not there. Ignoring.
Successfully deleted 5 keys from OCR.
Node deletion operation successful.
¨mxrac02,2¨ deleted successfully
[root@jssdbn1 install]# exit
logout
[oracle@jssdbn1 bin]$ ./olsnodes -n -i
mxrac01 1 mxrac01-vip
mxrac03 3 mxrac03-vip
加入节点步骤:
http://junsansi.itpub.net/post/29894/494352
安装Linux Packages, OCFS2安装 , 核心参数,挂载磁盘可以事先做好
1. 初始化新加入的节点4,# vi /etc/hosts , 在所有节点加入节点4的信息,当然4节点也要包括1,3节点的
"10.13.67.174 mxrac04
192.168.1.14 mxpri04
10.13.67.184 mxvip04"
2. 在新节点4配置SSH密钥认证
# su - oracle
$ cd /home/oracle
$ mkdir .ssh
$ chmod 700 .ssh
$ ssh-keygen -t rsa
$ ssh-keygen -t dsa
3. 然后转到RAC01上执行,以oracle身份操作 (执行过程中,当访问远端节点时可能需要输入目标节点的密码): :
$ cd /home/oracle/.ssh
$ ssh mxrac04 cat /home/oracle/.ssh/id_rsa.pub >>authorized_keys
$ ssh mxrac04 cat /home/oracle/.ssh/id_dsa.pub >>authorized_keys
4. 然后在节点1上传输节点1中的配置好的认证密钥信息到节点3和新加入的节点4
$ scp /home/oracle/.ssh/authorized_keys mxrac03:/home/oracle/.ssh/
$ scp /home/oracle/.ssh/authorized_keys mxrac04:/home/oracle/.ssh/
5. 配置完成后,在三个节点分别执行下列命令(生成know_hosts):某些节点第一次执行上述某些命令时可能会提示输入目标节点的密码,没有关系,输入就是
。不过执行过一次之后,应该就不会再需要输入密码了
$ssh mxrac01 date
$ssh mxrac03 date
$ssh mxrac04 date
$ssh mxpri01 date
$ssh mxpri03 date
$ssh mxpri04 date
6. 新节点的配置基本完成,下面准备开始安装crs(确保ocfs2已经安装完成) 。
7. 添加clusterware到新节点
在节点1上 $ /u01/packages/clusterware/cluvfy 执行下面的命令检查安装环境:
[oracle@mxrac01]$ /u01/packages/clusterware/cluvfy/runcluvfy.sh stage -pre crsinst -n mxrac04 -verbose
如果返回信息中提示“Could not find a suitable set of interfaces for VIPs.”,可以忽略该错误信息,这是一个bug,Metalink中有详细说明,
doc.id:338924.1。 参考 http://space.itpub.net/7607759/viewspace-620131
8. 安装clusterware到新节点4上 ,在节点1上(VNC xwindows界面)
$ cd /u01/product/crs/oui/bin
$ ./addNode.sh 界面中加入节点4的一些信息,然后安装(其实主要是从节点1拷贝文件到远端新节点),然后按顺序执行以下脚本(root):
"节点4上执行orainstRoot.sh;
节点1上执行rootaddnode.sh;
节点4上执行root.sh; -- 注意:执行这个脚本之前需要更改vip中的代码 (对应一个
bug:3937317)
修改VIP文件: # vi /u01/product/crs/bin/vipca 在fi后面加入 unset LD_ASSUME_KERNEL
注意scrctl也需要更改一下: # vi
/u01/product/crs/bin/srvctl 在export后面加入 unset LD_ASSUME_KERNEL
然后应该是VIPCA的配置画面,完成后点击OK . "
"9. 接下来需要将新节点的ONS(Oracle Notification Services)配置信息写入OCR(Oracle Cluster Register),在节点1执行脚本如下:=
[oracle@mxrac01]$
/u01/product/crs/bin/racgons add_config mxrac04:6200"
10. 至此,新节点的CLUSTERWARE配置完成,要检查安装的结果,可以在新节点中调用cluvfy命令进行验证
"[oracle@mxrac04 ]$ /u01/product/crs/bin/cluvfy stage -post crsinst -n mxrac04 -verbose
参考: http://space.itpub.net/7607759/viewspace-
620131
如果报错
ERROR:
CRS is not installed on any of the nodes.
Verification cannot proceed.
需要在新节点上改权限:
# chmod 644
/etc/oraInst.loc
# ls -l /etc/oraInst.loc"
11. 复制oracle软件到新节点,我们选择在节点1上操作(VNC xwindows界面):
[oracle@mxrac01]$ cd /u01/product/oracle/oui/bin
$ ./addNode.sh 界面中选择要加入的节点4 ,点击安装后ORACLE 自动开始复制文件到新节点中
复制操作完成后,提示在新节点即mxrac04 执行脚本,注意要以root身份进行
上述脚本成功执行后,返回窗口界面点击OK,提示安装成功,点击exit退出界面即可。
12.配置监听服务到新节点, 在新节点4上 以ORACLE身份登陆到linux系统,执行$ORACLE_HOME/bin目录中的netca命令即可
配置前注意备份原节点1,3的listener.ora及tnsnames.ora 文件。
"13. 最后还要从节点1 tnsnames.ora中拷贝local_listener.ora 到新节点4中。 设置为:
LOCAL_MXDELL =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL =
TCP)(HOST = 10.13.67.174)(PORT = 1521))
)
配置好所有节点的listener.ora , tnsnames.ora 文件"
14. 添加实例到新节点4 ,我们选择在节点1上执行dbca (VNC XWINDOWS界面),千万注意其中redo log thread的问题。
选择"Instance Management”, 选择"Add an instance“, 然后选择一个RAC数据库(如果当前存在多个RAC环境的话),再一个就是指定一个具有SYSDBA权限的用户及密码; 弹出界面显示当前RAC配置中拥有的实例,直接点击下一步即可; 为新节点上的实例命名(mxdell4)
接下来,需要定义一些与实例相关的文件,比较UNDO、REDOLOG等,想省事的话此处保持默认即可,因为这些信息如果发现不合适,后期也都是可调的。确认无误后,点击FINISH按钮 ; 在此期间,ORACLE开始自动在新节点上创建实例
15. 截止到目前,新节点已经是这个RAC配置中的一员了,使用crs_stat -t 命令查看
任意结节登陆sqlplus命令行,查询gv$instance视图 ;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-622411/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/35489/viewspace-622411/