前段时间说过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方式
欢迎补充说明,拍砖也行