ORA-12505: TNS:listener 当前不知道连接描述符中给出的 SID

use*_*114 5 oracle oracle-11g-r2 listener

几天前,我在我的数据库上执行了关闭,但花了很长时间,所以我关闭了我的 m/c。重新启动机器后,当我尝试使用 TOAD 连接到我的数据库时出现此异常。我提到了下面提到的线程,但问题仍未解决:

/sf/ask/396312731/

/sf/ask/228749531/

我的 tnsnames.ora 的内容:

ORCL=
  (DESCRIPTION=
    (ADDRESS=
      (PROTOCOL=TCP)
      (HOST=localhost)
      (PORT=1521)
    )
    (CONNECT_DATA=
      (SERVER=dedicated)
      (SERVICE_NAME=orcl)
    )
  )
Run Code Online (Sandbox Code Playgroud)

“lsnrctl 服务”的输出:

LSNRCTL for 32-bit Windows: Version 11.2.0.1.0 - Production on 15-FEB-2012 23:53:33

Copyright (c) 1991, 2010, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
         LOCAL SERVER
The command completed successfully
Run Code Online (Sandbox Code Playgroud)

我所有的 oracle 服务都在运行。我尝试使用启动命令启动数据库:

C:\Users\PPPP>sqlplus

SQL*Plus: Release 11.2.0.1.0 Production on Wed Feb 15 23:56:59 2012

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

Enter user-name: / as sysdba
Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 1071333376 bytes
Fixed Size                  1375792 bytes
Variable Size             763363792 bytes
Database Buffers          301989888 bytes
Redo Buffers                4603904 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 214624
Session ID: 5 Serial number: 3
Run Code Online (Sandbox Code Playgroud)

在 listener.log 文件中,我看到此错误:

Thu Feb 16 00:13:28 2012
16-FEB-2012 00:13:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)*            (USER=PRITHVIRAJ-PC$))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)    (HOST=127.0.0.1)(PORT=59161)) * establish * orcl * 12514
TNS-12514: TNS:listener does not currently know of service requested in     connect descriptor
Run Code Online (Sandbox Code Playgroud)

请帮我解决这个问题。

Ale*_*ole 6

ORA-19815消息所示,您的 3GB 恢复目标已满;数据库无法归档更多重做日志文件。它已经到了需要将完整的重做日志文件切换出来的地步,但是没有可供重用的文件,因为它们无法存档。我想这就是它无法完全关闭的原因,也可能是您首先想关闭的原因,因为在该状态下您无法对数据库做太多事情。

短期修复是增加恢复区的大小,假设您有足够的磁盘空间,例如:

startup nomount
alter system set db_recovery_file_dest_size=4G scope=both;
alter database mount;
alter database open;
Run Code Online (Sandbox Code Playgroud)

但是您随后需要确定如何管理您的档案,并将恢复区大小设置为适合您的备份和保留需求的合理值。这可能就像安排一个作业来删除过时的备份一样简单,例如从企业管理器控制台的“可用性”选项卡中,在“管理当前备份”下;但是您需要确定最适合您的路线(不要盲目地听从互联网上一些对您的要求一无所知,对 EM/RMAN 也不太了解的人的建议)。