欢迎投稿

今日深度:

一次Windows注册表中注册表项目丢失导致的Oracle数

一次Windows注册表中注册表项目丢失导致的Oracle数据库启动问题。


一次Windows 注册表中注册表项目丢失导致的Oracle 数据库启动问题。

环境说明:
1.windows 2008操作系统 x64bit
2.Oracle database 11.2.0.1 32bit
3.sqlplus / as sysdba进不去,报错:

c:\user\administrator>sqlplus / as sysdba
Error 6 initializing SQL*Plus
Message file sp1<lang>.msb not found
SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory

插曲:
也许有人会问:sqlplus 进不去,你怎么断定这个oracle database 是32bit的,我是用的如下的方法来断定的:
进入到bdump下,随便打开一个trc,在该trc文件的前面几行就可以看到了。


经过检查发现:如下的注册表项目丢失

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE


于是:
我就在我的win 7 64bit环境中,安装了一次Oracle database 11.2.0.1的32bit server software,然后将win 7中的HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE导出来,在 Windows 2008 x64bit环境中导入进去,之后sqlplus / as sysdba能顺利进入。


也许有人问:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE --->是这个?
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE ---->为啥不是这个?

因为这是32bit的Oracle database server software 安装在x64bit的windows上。

额外说明:

1. Oracle Database server software的bit数 必须与os 的bit数匹配,即:要么都是32bit,要么都是x64bit, 否则,Oracle support 是不予支持的。(oracle 不予支持跟能不能安装,以及装了能不能用,是两个概念)

2. Oracle Database Client software的bit数 可以不与os 的bit数相匹配。

www.htsjk.Com true http://www.htsjk.com/oracle/23468.html NewsArticle 一次Windows注册表中注册表项目丢失导致的Oracle数据库启动问题。 一次Windows 注册表中注册表项目丢失导致的Oracle 数据库启动问题。 环境说明: 1.windows 2008操作系统 x64bit 2.Oracle databas...
评论暂时关闭