ORA 12505 Listener does not currently know of SID given in connection descriptor

来源:互联网 发布:中国程序员数量不够 编辑:程序博客网 时间:2024/04/26 20:46

oracle数据库正常启动后,在本地可以正常访问,但是远程使用sqldevelop却不能访问,提示ORA 12505 Listener does not currently know of SID given in connection descriptor,解决这个问题之前,先看一下oracle服务器正常启动流程

1.启动监听

 命令:lsnrctl start

2.登陆sqlplus

 命令:sqlplus /nolog

3.以系统管理员身份连接数据库

 命令:conn /as sysdba

4.启动oracle实例

 命令:startup

提示:如果启动后提示出现问号,可参考前一篇博客,oracle中文乱码问题解决


再回头来看上面提到的问题,由于本地访问数据库正常,远程访问不正常,很容易想到,应该是监听出了问题,

可以用一下命令查看监听进程的状态

 命令:lsnrctl status

 下图是监听处于正常状态的截图(出错的时候忘记截图了)

在异常情况下,输入此命令,在The command completed successfully上方会提示the listener supports no services,顺着这个提示查问题,在网上找到一篇博客,

http://www.ha97.com/4788.html,尝试着使用第一种方法,在listener.ora配置文件后加上SID相关配置,问题解决了。现附上修改后的配置如下(红色部分为新添加的):

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1234))
    )

    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
)
SID_LIST_LISTENER =
    (SID_LIST =
      (SID_DESC =
          (GLOBAL_DBNAME = test)
          (SID_NAME = test)
          (ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1)
      )
    )


ADR_BASE_LISTENER = /home/oracle/app/oracle


0 0
原创粉丝点击