将 Oracle 10g RAC 数据库转换为单实例

将 Oracle 10g RAC 数据库转换为单实例

为了降低解决方案的复杂性,我被要求将双节点 Oracle 10g RAC 生产数据库转换为单实例。该数据库在 RHEL5 上运行,并在 SAN 上使用 ASM。

我认为至少需要采取以下步骤:

  • 从集群就绪服务中删除实例
  • 限制第二个节点对共享存储的访问
  • 删除第二个实例的重做日志
  • 删除第二个实例的撤消表空间
  • 从 pfile/spfile 中删除对第二个实例的引用
  • 重新链接 Oracle 二进制文件,请参阅 Gaius 的帖子

还有其他考虑吗?创建单节点物理备用会更好吗?

有人知道相关的白皮书或者 Metalink 说明吗?

答案1

此链接有帮助吗?

对于 ASM,编辑 ASM pfile 并删除以下行

cluster_database=TRUE
+ASM.instance_number=<somthing> 

如果 rootdelete.sh 失败,您可能还会发现 metalink 239998.1 很有帮助。

答案2

您还需要重新链接 Oracle 二进制文件:

$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk rac_off
$ make -f ins_rdbms.mk ioracle

当然,如果您创建单节点备用,它将已经“取消 RAC”,但您仍然需要“清理”第二个重做线程等。刚刚快速浏览了一下 Metalink,他们的搜索引擎找到了很多从单实例转换为 RAC 的结果,但我不认为 Oracle 希望您反过来做...

相关内容