两个发生在Oracle 11g RAC中创建10g数据库的错误分析
在Oracle 11g R2 的clusterware 和asm环境下,我们出于升级或者迁移数据的目的,会运行Oracle 10g的rdbms环境。在使用10g 的rdbms 创建数据库时,需要事先做一些调整,否则会出现这样那样的问题。
错误一:在选定ASM 存储时,dbca 不能启动已经配置好的asm 实例;
具体错误信息如下:
"DBCA could not startup the ASM instance configured on this node. To proceed with the database creation using ASM, ASM instance needs to be up and running. Do you want to recreate ASM instance on this node?"
这是因为在10g 的rdbms 中无法捕获到grid 中的asm 实例状态。
解决方法:
手工创建一个链接,使得10G_DB_HOME/network/admin/listener.ora 指向11G_GRID_HOME/ network/admin/endpoints_listener.ora 。
ln –s <11G_GRID_HOME>/network/admin/endpoints_listener.ora listener.ora
export TNS_ADMIN=<10G_DB_HOME>/network/admin
错误二:在创建文件时出ORA-29702 错误;
这是因为在10g 的css 资源是静态配置的,到了11g 时,变成了动态的配置。如果要在11g 的asm 和clusterware 环境下运行10g 的rdbms ,则需要手工调整为静态配置,oracle 称为pinning a node 。
解决方法:
使用root 用户执行<Grid_home>/bin/crsctl pin css -n nodes ,将css 资源修改成静态配置。示例crsctl ping css -n serv1 serv2 。