这是个相当恶心的错误,就像癫痫病人一样,不知道什么时候就犯了,好好的用着,吃晚饭再连,就报no listener 起了监听,之后就是这个错误。胡搞一通,不行,重启OK。不知道哪里的问题,因为是测试环境,经常会重启,这个错误就想幽灵一样时出时没。现在的oracle怎么那么难伺候!!烦的多了终于下定决心要找出问题所在,于是在网上阅贴无数,终于找着了能按照一定规律解决问题的方法,就转载了过来
关于这个错误,有很多种情况,我知道有2种情况,以下是网上摘录的:
1、近日在配置Oracle 10G的流复制环境时,遇到一个问题,关闭数据库(shutdown immediate)后,通过SQL Plus连接数据库:conn sys/his@orc0 as sysdba,出现如下错误:
通过重启服务的方式启动数据库,再次连接却能成功登录,也就是说在关闭数据库状态下无法连接服务器。
如果在listener.ora文件中指定监听的实例名,则即使数据库处于关闭状态,仍然可以连接。
listener.ora
SID_LIST_LISTENER =
LISTENER =
以上粗体部件为增加的内容,修改后重启监听服务后即可。
附:通过在lsnrctl中输入set display verbose,然后再通过命令service查看,服务状态为READY表示PMON自动注册的服务名,而UNKNOWN则表示该服务是手工在LISTENER.ORA中配置的数据库服务。
2、可能是数据库服务器蹦了,这样的话,光重启服务是不行的,重启机器也无济于事。可以用下面的方法解决。
oracle not available
shared memory realm does not exist
上述是我转载的文章,试了一下第一种,成功了。应该是有用的。