ORA-01034 错误的解决办法,错误信息shared memory realm does not exist
ORA-01034 错误的解决办法
问题描述
=======
在试图启动或连接数据库的时候 ,Oracle报告下列错误:
ERROR:
ORA-27101 Shared memory realm does not exist
ORA-01034 ORACLE not available
基本解释
=======
Error: ORA-27101
Text: shared memory realm does not exist
-------------------------------------------
Cause: Unable to locate shared memory realm
Action: Verify that the realm is accessible
原因:
机器加入了域,或者安装了多个实例
如何解决
=======
这个问题其实用一句话就可以说清楚:
ORACLE_HOME或者ORACLE_SID设置不正确。
在以前的版本中,如果 ORACLE_SID不正确,一般都只提示ORA-01034。Oracle 8.1.7 给出一个额外的信息:ORA-27101。
->如果是Unix,在Shell里把ORACLE_SID设置正确即可(注意大小写敏感的问题)。
此外,检查ORACLE_HOME环境变量。如何检查参考如下的命令:
% echo $ORACLE_SID
% ps -ef |grep smon
->如果是Windows,一般都是因为系统中有多个实例造成的。
可以在命令行下 C:\>set ORACLE_SID=DEMO
把这里的 DEMO换为你相应的实例名。
如果还不行的话,检查注册表中的 ORACLE_HOME。
此外,在Windows环境下有的时候连接不上远程的数据库,会报告如此的错误。
解决办法是把 sqlnet.ora文件中的
SQLNET.AUTHENTICATION_SERVICES = (NTS) NTS换为NONE.
或者使用Net Assistant进入后 本地->概要文件->Oracle Advanced Security选项卡把NTS从右边删除掉。
最后重新启动数据库或者重新启Oracle的服务就OK了