oracle+dbca+创建失败,Windows环境下Oracle10g使用DBCA创建数据库时遇到ORA-12560协议适配器错误...

Windows环境下Oracle10g使用DBCA创建数据库时遇到ORA-12560协议适配器错误

看到这个错误,首先想Windows环境下,都有哪些情况会出现ORA-12560?

1.注册表ORACLE_SID与实例名不一致

2.关于Oracle的服务没有启动

可是,现在是DBCA建库的过程,上述两项还没有就绪.

所以,一筹莫展.

按照界面上的关于日志保存路径的提示,查看日志

D:\oracle\product\10.2.0\db_1\cfgtoollogs\dbca\orcl\下无日志

D:\oracle\product\10.2.0\db_1\cfgtoollogs\dbca\trace.log

里面,也是充斥着ORA-12560协议适配器错误

不过,大致看到了一些有用的线索,出现错误之前,是调用的如下批处理

D:\oracle\product\10.2.0\admin\scripts\orcl.bat

打开此批处理,看到其中先创建了若干文件夹,然后

D:\oracle\product\10.2.0\db_1\BIN\oradim.exe -new -SID ORCL -startmode manual -spfile

所以,就手工尝试执行,看看结果

于是手工执行上述oradim命令行命令,提示:创建服务失败,服务已经存在.(由于当时抢时间,没有留下准确的提示)

于是,先使用操作系统命令sc delete OracleServiceORCL来删除服务

然后,再执行oradim测试,结果会提示:服务已标记为删除

重启计算机,反复删与建,均提示失败,要么是服务已经存在,要么是服务已标记为删除.

甚至,从\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services这个注册表分支下找到相应服务,通过删注册表分支的方法也尝试了.

还是不行.

做到这儿,其实也不难理解为什么提示ORA-12560了.因为DBCA创建过程中,此时此刻,应该是先创建服务成功,然后启动成功,接着继续.既然创建不成功,当然启动不成功,所以就跟数据库创建之后,没有启动Oracle服务一样的现象了.

总之,产生ORA-12560错误的原因是Oracle服务创建不成功.

最终,仔细检查下面几个注册表分支,让其下都没有OracleServiceORCL服务,

\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services

\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\services

\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services

控制面板\管理工具\服务中,也没有相关服务

然后,DBCA建库成功!

后记:据查阅资料,对于CurrentControlSet与ControlSet001等的说明,众说纷纭,个人倾向于这样的观点:Current是保存的是当前的,而带数值001或002(或者其他)的,分别是保存最后一次正确的配置,或者是本次新增待下次启动生效的服务,或者是本次删除待下次启动真正删除的服务.不知道是否正确.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值