【RAC】Oracle10g RAC 节点重配的方式

前段时间说过Oracle11g RAC节点重配的一些说明,相对于Oracle10g来说,更方便更便于管理。那么Oracle10 RAC 需要通过什么方式呢,或者需要注意什么呢

 

     第一种环境:添加新节点,这里不再过多描述,根据官方文档进行添加即可。

 

   第二种环境:操作系统重装,这里可使用第一种环境所述方法,先删除节点,再添加节点。我们会推荐使用官方文档的做法,但这里也会有一些问题存在,情况类似如下:

     

1 2 3 4 5 6 7 8 DBCA add instance fails with: Failed to create directory "DESCRIPTION=(ADDRESS_LIST= (ADDRESS=(PROTOCAL=tcp)(HOST= )...  I'm getting the following error from DBCA when  I try to add the instance on the new RAC node:Failed to create directory   ""(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=hdoradb06.solar.cat.com)   (PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=t3icsb_XPT)(INSTANCE_NAME=t3icsb)   (SERVER=dedicated)))", LGWR ASYNC NOAFFIRM delay=0 OPTIONAL max_failure=0    max_connections=1 reopen=300 db_unique_name="t3icsb" register net_timeout=180    valid_for=(online_logfile,primary_role)" on "hdracprd04", "Badly placed ()'s: failed"

这里主要是说 部署有Dataguard的环境,添加节点时,dbca添加实例失败

 

原因:

DBCA does not handle remote destinations such as dataguard archive log destination.  --dbca不处理远程目标,如DG日志目录

 

解决办法:

升级到Oracle11.1之后  --如果暂时无法升级,可以使用tar备份,恢复

或者

停止DG,修改初始化参数,并重启数据库

 

后续再添加standby log ,及相关参数配置

 

这样不就更麻烦了,还有什么方式呢,那就使用tar备份正常节点集群和数据库安装目录,恢复至重装系统节点,修改相关目录、文件名,再次执行root.sh 就好了,当然过程会比说的复杂一点

 

等等,我们不删除实例不就行啦,就像Oracle11g RAC那样,其实呢,是不行滴,Oracle10g RAC如果你想重建,需要清理ASM,清理ASM首先需要清理与之关联的instance资源,10g与11g的RAC资源管理方式不同,所以,重建其实就是delte,add。关于11g RAC请参考之前文章说明 OS重装后RAC11g节点重置注意事项

 

   主要想说另一种环境,如果只是Oracle10g RAC的安装目录磁盘损坏呢,那么什么方式更方便   使用tar备份集群及软件安装目录。此种方式也有效避免了第二种环境中描述的问题。

 

   由于只是安装目录丢失,我们通过tar备份恢复后,无需执行root.sh脚本,备份恢复后,检查Oracle 产品目录,修改相关目录,例如CRS_HOME/log/"hostname" , 清理原有节点日志信息,修改监听配置文件、TNSNAMES文件。

好吧,来个参考命令:

建议:检查系统参数、磁盘属性等,检查原有节点2的undo表空间、redo等是否存在

 

[root@myrac1 oracle]# tar cvfp product2017.tar product/

 

注意:使用root用户(集群文件中有部分属组是root用户,注意保留原有目录及文件的权限,也就是参数'p')

 

将备份文件拷贝至目标端,使用root用户解压

[root@myrac2 oracle]# tar -xvf product2017.tar

 

解压完成,检查相关权限:

1 2 3 4 5 6 7 8 9 10 11 12 13 [oracle@myrac2 oracle]$ cd product [oracle@myrac2 product]$ ls 10.2.0 [oracle@myrac2 product]$ ls -lrt total 4 drwxrwx--- 6 oracle oinstall 4096 Jun 20 21:39 10.2.0 [oracle@myrac2 product]$ cd 10.2.0/ [oracle@myrac2 10.2.0]$ ls -lrt total 16 drwxr-xr-x 44 root   oinstall 4096 Jun 20 21:06 crs drwxr-x---  4 oracle oinstall 4096 Jun 20 21:45 admin drwxrwx---  7 oracle oinstall 4096 Nov 10 22:40 oraInventory drwxr-x--- 61 oracle oinstall 4096 Nov 10 23:15 db_1

 

 

权限正常,修改监听文件、清理相关日志目录、修改目录名,修改dbs目录下密码及初始化参数文件名,检查数据库参数,例如Local_listener,remote_listener等相关配置,再次检查确认

 

修改完成后,使用root用户执行crsctl start crs

 

检查集群运行状态,检查数据库运行状态,测试连接

 

此处是针对UNIX环境,Windows  那就再说呗  

 

  所有操作或者方案,都需要根据现有环境,进行评估、测试,选择一个相对最好的方案,建议在做操作之前,测试一下,备份一下

 

有机会可以尝试一下第二种环境中,使用tar方式  

 

欢迎补充说明,拍砖也行

上一篇:PopupWindow和Dialog区别,移动架构师成长路线


下一篇:使用el-table封装dialog踩坑日记