RAC 用DBCA新建数据库的时候报个错,之前的那个数据库没有删除掉,dbca 命令还能显示这个数据库。 之前采用的crs_unregister 这个命令从OCR中注销的。 但是没有彻底清除。 如图:
如果我们忽略它,创建同样名称的数据库,那么会报错。 错误如图显示:
the cluster database(DB_NAME) already exits。
出现这个的原因很简单,就是rac 这个数据库的信息没有彻底的从OCR中清除干净。下面我们来清除这些信息。
[oracle@rac1 bin]$ srvctl config -- 这个命令用来显示保存在SRVM配置文件中的配置信息
Rac
[oracle@rac1 bin]$ srvctl remove database -d rac -- 删除这个数据库
Remove the database rac? (y/[n]) y
[oracle@rac1 bin]$ srvctl config -- 再次查看,还存在,很奇怪
rac
[oracle@rac1 bin]$ srvctl remove database -d rac –f -- 加上-f 参数,强制删除
[oracle@rac1 bin]$ srvctl config -- 查看,正常,信息已经被删除掉
[oracle@rac1 bin]$
因为之前这个数据库的实例信息我已经删除了,所以rac这个数据库的信息也是不完整的,对于不完整的信息删除,还是要强制删除。
我们在运行一下DBCA 看一下:
至此,问题已经解决了。 但是想借此反思一下。 为什么我们会出现这么多错误。 就是因为不规范的操作。 如果每一步都按照文档来操作,如果我们理解了每一步的原理,那么我们就不会犯这么多错误。
但是学习是一个过程,我们会不断的遇到问题,然后解决了,也就进步了,随着时间的积累,我们的经验会越来越丰富,处理问题就会简单很多,出现问题的概率也会小很多。
总之,解决问题的过程就是成长的过程,搞技术需要的是这个独立解决问题的能力。
------------------------------------------------------------------------------