β

oracle无法连接:shared memory realm does not exist

从一事无成到仅成一事 18 阅读

oracle各服务运行正常。

各服务重启后,情况不变。

重启服务器再重启oracle服务后,情况不变。

查资料,此错误可能是oracle异常关闭引起的。该服务器近期曾经异常关机过。

查看服务器情况,c盘空间已满,怀疑可能也是原因之一。清理c盘后情况不变。

运行:

sqlplus /nolog
connect / as sysdba
startup

报错

ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name ‘LISTENER_ORCL’

按照第二行的错误查询资料,查得:http://blog.csdn.net/lpftobetheone/article/details/11099785

按照此文章的过程解决。

用sqlplus /nolog登录sqlplus,再执行connect  / as sysdba,连接到空闲进程。

在以下路径找到spfileorcl.ora(与文章中不同):

…\product\11.2.0\dbhome_1\database

执行

create pfile from spfile=’…\product\11.2.0\dbhome_1\database\spfileorcl.ora’;

在同样路径下生成了initorcl.ora。用文本编辑器打开,修改*.local_listener=一行。

按照文章中的说明进行修改,不清楚hostname是什么,在tnsname.ora中查找。经过文件搜索,该文件的路径为:

…\product\11.2.0\dbhome_1\NETWORK\ADMIN

找到:

ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = Dev)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

将initorcl.ora中的内容修改为:

*.local_listener='(ADDRESS_LIST=(Address= (Protocol=tcp) (Host = DEV )(Port=1521)))’

保存退出,用这个pfile创建spfile:

SQL> create spfile from pfile=”…\product\11.2.0\dbhome_1\database\initorcl.ora’;

执行startup,启动成功。

至此,问题解决。

作者:从一事无成到仅成一事
做一个高尚的人,一个纯粹的人,一个有道德的人,一个脱离了低级趣味的人,一个有益于人民的人
原文地址:oracle无法连接:shared memory realm does not exist, 感谢原作者分享。

发表评论