【问题标题】:ORA-12505: TNS:listener does not currently know of SID given in connect descriptor (DBD ERROR: OCIServerAttach)ORA-12505: TNS:listener 目前不知道连接描述符中给出的 SID (DBD 错误: OCIServerAttach)
【发布时间】:2010-07-16 18:34:53
【问题描述】:

我创建了一个在 VirtualBox 上运行的 Windows 2003 R2 虚拟机,并安装了 Oracle (10201_database_win32)。

我也在虚拟以太网上分配了一个静态 IP。

安装后一切正常。

我列出了(lsnrctl services)监听器安装后立即知道的服务,结果是:

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 15-JUL-2010 23:02
:19

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0
         LOCAL SERVER
Service "orcl" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:39 refused:0 state:ready
         LOCAL SERVER
Service "orclXDB" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
      "D000" established:0 refused:0 current:0 max:1002 state:ready
         DISPATCHER <machine: ORACLE10GVM, pid: 760>
         (ADDRESS=(PROTOCOL=tcp)(HOST=oracle10gvm)(PORT=1035))
Service "orcl_XPT" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:39 refused:0 state:ready
         LOCAL SERVER
The command completed successfully

所以我重新启动,没有任何工作了。我执行了相同的命令,结果如下:

LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 16-JUL-2010 21:29:20

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

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

我卸载/重新安装了 5-6 次,但什么也没有。所以我不太明白有什么问题。 据我检查,这些服务都已启动并正在运行。

我在这里没有想法和时间。

有什么建议吗?我检查了许多论坛等,没有具体的答案或解决方案。

希望有人能帮忙!

这里是 listener.log 文件:

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production on 15-JUL-2010 21:56:27

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

System parameter file is C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
Log messages written to C:\oracle\product\10.2.0\db_1\network\log\listener.log
Trace information written to C:\oracle\product\10.2.0\db_1\network\trace\listener.trc
Trace level is currently 0

Started with pid=372
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle10gvm)(PORT=1521)))
Listener completed notification to CRS on start

TIMESTAMP * CONNECT DATA [* PROTOCOL INFO] * EVENT [* SID] * RETURN CODE
15-JUL-2010 21:56:30 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=Administrator))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=169869568)) * status * 0
15-JUL-2010 21:56:35 * service_register * orcl * 0
15-JUL-2010 21:57:15 * service_update * orcl * 0
15-JUL-2010 21:57:17 * service_died * orcl * 12537
15-JUL-2010 21:57:19 * service_register * orcl * 0
15-JUL-2010 21:57:22 * service_update * orcl * 0
15-JUL-2010 21:57:25 * service_update * orcl * 0
15-JUL-2010 21:57:46 * service_update * orcl * 0
15-JUL-2010 21:57:55 * service_update * orcl * 0
15-JUL-2010 21:58:14 * service_update * orcl * 0
15-JUL-2010 21:58:17 * service_update * orcl * 0
15-JUL-2010 21:58:23 * service_update * orcl * 0
15-JUL-2010 21:58:26 * service_died * orcl * 12537
15-JUL-2010 21:58:28 * service_register * orcl * 0
15-JUL-2010 21:58:33 * service_update * orcl * 0
15-JUL-2010 21:58:36 * service_update * orcl * 0
15-JUL-2010 21:58:39 * service_update * orcl * 0
15-JUL-2010 21:58:45 * service_update * orcl * 0
15-JUL-2010 21:58:56 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1037)) * establish * orcl * 0
15-JUL-2010 21:58:57 * service_update * orcl * 0
15-JUL-2010 21:58:57 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1038)) * establish * orcl * 0
15-JUL-2010 21:58:57 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1039)) * establish * orcl * 0
15-JUL-2010 21:58:57 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1040)) * establish * orcl * 0
15-JUL-2010 21:59:00 * service_update * orcl * 0
15-JUL-2010 21:59:06 * service_update * orcl * 0
15-JUL-2010 21:59:39 * service_update * orcl * 0
15-JUL-2010 22:00:12 * service_update * orcl * 0
15-JUL-2010 22:00:20 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1046)) * establish * orcl * 0
15-JUL-2010 22:00:21 * service_update * orcl * 0
15-JUL-2010 22:00:23 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\bin\emagent.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1047)) * establish * orcl * 0
15-JUL-2010 22:00:25 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\bin\emagent.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1048)) * establish * orcl * 0
15-JUL-2010 22:00:26 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1050)) * establish * orcl * 0
15-JUL-2010 22:00:28 * ping * 0
15-JUL-2010 22:00:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:00:38 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1054)) * establish * orcl * 0
15-JUL-2010 22:00:39 * log_status * 0
15-JUL-2010 22:00:42 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=169869568)) * status * 0
15-JUL-2010 22:00:45 * service_update * orcl * 0
15-JUL-2010 22:01:08 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1068)) * establish * orcl * 0
15-JUL-2010 22:01:18 * service_update * orcl * 0
15-JUL-2010 22:01:51 * service_update * orcl * 0
15-JUL-2010 22:02:04 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=services)(ARGUMENTS=64)(SERVICE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521))))(VERSION=169869568)) * services * 0
15-JUL-2010 22:02:05 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:05:28 * ping * 0
15-JUL-2010 22:05:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:05:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1102)) * establish * orcl * 0
15-JUL-2010 22:07:01 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1111)) * establish * orcl * 0
15-JUL-2010 22:07:02 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1112)) * establish * orcl * 0
15-JUL-2010 22:07:03 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1113)) * establish * orcl * 0
15-JUL-2010 22:07:03 * service_update * orcl * 0
15-JUL-2010 22:07:55 * service_update * orcl * 0
15-JUL-2010 22:08:58 * service_update * orcl * 0
15-JUL-2010 22:10:28 * ping * 0
15-JUL-2010 22:10:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:10:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1137)) * establish * orcl * 0
15-JUL-2010 22:11:31 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1141)) * establish * orcl * 0
15-JUL-2010 22:12:31 * service_update * orcl * 0
15-JUL-2010 22:12:56 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1150)) * establish * orcl * 0
15-JUL-2010 22:15:28 * ping * 0
15-JUL-2010 22:15:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:15:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1170)) * establish * orcl * 0
15-JUL-2010 22:16:07 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1173)) * establish * orcl * 0
15-JUL-2010 22:16:53 * service_update * orcl * 0
15-JUL-2010 22:17:04 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=services)(ARGUMENTS=64)(SERVICE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521))))(VERSION=169869568)) * services * 0
15-JUL-2010 22:17:05 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:19:02 * service_update * orcl * 0
15-JUL-2010 22:20:20 * service_update * orcl * 0
15-JUL-2010 22:20:28 * ping * 0
15-JUL-2010 22:20:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:20:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1199)) * establish * orcl * 0
15-JUL-2010 22:21:14 * service_update * orcl * 0
15-JUL-2010 22:25:28 * ping * 0
15-JUL-2010 22:25:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:25:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1227)) * establish * orcl * 0
15-JUL-2010 22:26:33 * service_update * orcl * 0
15-JUL-2010 22:27:01 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1236)) * establish * orcl * 0
15-JUL-2010 22:27:03 * service_update * orcl * 0
15-JUL-2010 22:30:28 * ping * 0
15-JUL-2010 22:30:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:30:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1259)) * establish * orcl * 0
15-JUL-2010 22:31:07 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1262)) * establish * orcl * 0
15-JUL-2010 22:31:09 * service_update * orcl * 0
15-JUL-2010 22:32:05 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=services)(ARGUMENTS=64)(SERVICE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521))))(VERSION=169869568)) * services * 0
15-JUL-2010 22:32:06 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:35:22 * service_update * orcl * 0
15-JUL-2010 22:35:28 * ping * 0
15-JUL-2010 22:35:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:35:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1288)) * establish * orcl * 0
15-JUL-2010 22:40:28 * ping * 0
15-JUL-2010 22:40:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:40:34 * service_update * orcl * 0
15-JUL-2010 22:40:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1316)) * establish * orcl * 0
15-JUL-2010 22:42:56 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1329)) * establish * orcl * 0
15-JUL-2010 22:44:56 * service_update * orcl * 0
15-JUL-2010 22:45:28 * ping * 0
15-JUL-2010 22:45:29 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:45:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1345)) * establish * orcl * 0
15-JUL-2010 22:46:08 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1348)) * establish * orcl * 0
15-JUL-2010 22:46:08 * service_update * orcl * 0
15-JUL-2010 22:47:05 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=services)(ARGUMENTS=64)(SERVICE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521))))(VERSION=169869568)) * services * 0
15-JUL-2010 22:47:06 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:50:20 * service_update * orcl * 0
15-JUL-2010 22:50:28 * ping * 0
15-JUL-2010 22:50:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:50:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1376)) * establish * orcl * 0
15-JUL-2010 22:55:28 * ping * 0
15-JUL-2010 22:55:28 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 22:55:36 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1404)) * establish * orcl * 0
15-JUL-2010 22:55:39 * service_update * orcl * 0
15-JUL-2010 22:58:32 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1423)) * establish * orcl * 0
15-JUL-2010 22:58:32 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1424)) * establish * orcl * 0
15-JUL-2010 22:58:33 * service_update * orcl * 0
15-JUL-2010 22:58:36 * service_update * orcl * 0
15-JUL-2010 22:58:37 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1425)) * establish * orcl * 0
15-JUL-2010 22:58:37 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SID=orcl)(SERVER=DEDICATED)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1426)) * establish * orcl * 0
15-JUL-2010 22:58:37 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1427)) * establish * orcl * 0
15-JUL-2010 22:58:39 * service_update * orcl * 0
15-JUL-2010 22:59:09 * service_update * orcl * 0
15-JUL-2010 22:59:43 * service_update * orcl * 0
15-JUL-2010 23:00:26 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1439)) * establish * orcl * 0
15-JUL-2010 23:00:29 * ping * 0
15-JUL-2010 23:00:29 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 23:00:37 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1445)) * establish * orcl * 0
15-JUL-2010 23:01:07 * service_update * orcl * 0
15-JUL-2010 23:01:08 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe)(HOST=ORACLE10GVM)(USER=SYSTEM))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1448)) * establish * orcl * 0
15-JUL-2010 23:02:04 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=services)(ARGUMENTS=64)(SERVICE=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521))))(VERSION=169869568)) * services * 0
15-JUL-2010 23:02:05 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=SYSTEM))(COMMAND=status)(ARGUMENTS=64)(SERVICE=(ADDRESS=(PROTOCOL=TCP)(HOST=oracle10gvm)(PORT=1521)))(VERSION=169869568)) * status * 0
15-JUL-2010 23:02:20 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=)(USER=Administrator))(COMMAND=services)(ARGUMENTS=64)(SERVICE=LISTENER)(VERSION=169869568)) * services * 0
15-JUL-2010 23:03:07 * service_update * orcl * 0
15-JUL-2010 23:03:07 * service_died * orcl * 12547
TNS-12547: TNS:lost contact
15-JUL-2010 23:03:08 * (CONNECT_DATA=(SID=orcl)(CID=(PROGRAM=C:\oracle\product\10.2.0\db_1\bin\emagent.exe)(HOST=ORACLE10GVM)(USER=OraUser))) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1459)) * establish * orcl * 12505
TNS-12505: TNS:listener does not currently know of SID given in connect descriptor

TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Production on 15-JUL-2010 23:07:58

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

System parameter file is C:\oracle\product\10.2.0\db_1\network\admin\listener.ora
Log messages written to C:\oracle\product\10.2.0\db_1\network\log\listener.log
Trace information written to C:\oracle\product\10.2.0\db_1\network\trace\listener.trc
Trace level is currently 0

Started with pid=1552
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle10gvm)(PORT=1521)))
Listener completed notification to CRS on start

TIMESTAMP * CONNECT DATA [* PROTOCOL INFO] * EVENT [* SID] * RETURN CODE
15-JUL-2010 23:08:17 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1030)) * establish * orcl * 12514
TNS-12514: TNS:listener does not currently know of service requested in connect descriptor
15-JUL-2010 23:08:18 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=))(SERVICE_NAME=orcl)) * (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.56.101)(PORT=1032)) * establish * orcl * 12514
TNS-12514: TNS:listener does not currently know of service requested in connect descriptor

【问题讨论】:

    标签: oracle10g windows-server-2003 virtualbox


    【解决方案1】:

    我有一些模糊的回忆,当您在安装数据库后第一次重新启动时,Oracle 数据库需要一些摆弄。但是,您没有给我们足够的信息来处理。开始:

    • 您使用什么代码连接到数据库?
    • 不清楚数据库实例是否已经启动。您可以在 VM 中使用 sqlplus / as sysdba 连接到数据库吗?
    • 自上次重启后,listener.log 文件(%ORACLE_HOME%\network\log)中写入了什么?

    编辑:我现在已经能够想出一个场景,它会产生与您收到的相同错误消息。在我看来,您尝试连接的数据库尚未启动。我在下面展示的示例在 Linux 上使用 Oracle XE,但我认为这不会产生重大影响。

    首先,让我们确认数据库已关闭:

    $ sqlplus / as sysdba SQL*Plus:发布 10.2.0.1.0 - 2010 年 7 月 17 日星期六 18:16:43 生产 版权所有 (c) 1982, 2005, Oracle。版权所有。 连接到空闲实例。

    是文本Connected to an idle instance 告诉我们数据库已关闭。

    使用sqlplus / as sysdba 将我们以SYS 身份连接到数据库而不需要密码,但它只能在与数据库本身相同的机器上工作。在您的情况下,您需要在虚拟机中运行它。 SYS有权限启动和关闭数据库,关闭时可以连接,但普通用户没有这些权限。

    现在让我们断开连接并尝试以普通用户身份重新连接,该用户无权启动/关闭数据库,也无权在数据库关闭时连接到它:

    SQL>退出 断开连接 $ sqlplus -L "user/pw@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SID=XE)))" SQL*Plus:发布 10.2.0.1.0 - 2010 年 7 月 17 日星期六 18:16:47 生产 版权所有 (c) 1982, 2005, Oracle。版权所有。 错误: ORA-12505: TNS:listener 当前不知道连接中给出的 SID 描述符 SP2-0751:无法连接到 Oracle。退出 SQL*Plus

    这是您收到的错误消息。

    现在,让我们启动数据库:

    $ sqlplus / as sysdba SQL*Plus:发布 10.2.0.1.0 - 2010 年 7 月 17 日星期六 18:17:00 生产 版权所有 (c) 1982, 2005, Oracle。版权所有。 连接到空闲实例。 SQL> 启动 ORACLE 实例已启动。 总系统全局区域 805306368 字节 固定大小 1261444 字节 可变大小 209715324 字节 数据库缓冲区 591396864 字节 重做缓冲区 2932736 字节 数据库挂载。 数据库打开。 SQL>退出 从 Oracle Database 10g Express Edition 版本 10.2.0.1.0 断开连接 - 生产

    现在数据库已经启动,让我们尝试以普通用户身份登录:

    $ sqlplus -L "user/pw@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SID=XE)))" SQL*Plus:发布 10.2.0.1.0 - 2010 年 7 月 17 日星期六 18:17:11 生产 版权所有 (c) 1982, 2005, Oracle。版权所有。 连接到: Oracle 数据库 10g 快捷版 10.2.0.1.0 版 - 生产 SQL>

    我们进去了。

    我之前没有看到 ORA-12505 错误,因为我通常不会通过在命令行中输入整个连接字符串来连接到 Oracle 数据库。这可能类似于您尝试连接到数据库的方式。通常,我要么连接到本地数据库,要么使用 TNS 名称连接到远程数据库(这些名称列在 tnsnames.ora 文件中,%ORACLE_HOME%\network\admin)。在这两种情况下,如果您尝试连接到已关闭的数据库,则会收到不同的错误消息。

    如果以上对您没有帮助(特别是,如果数据库已经启动,或者您在启动数据库时遇到错误),请告诉我们。

    编辑 2: 看来您遇到的问题确实是因为数据库尚未启动。似乎您的数据库未配置为在服务启动时启动。可以让数据库在服务启动时启动,在服务停止时关闭。为此,请使用适用于 Windows 的 Oracle 管理助手,请参阅 here

    【讨论】:

    • 1.我在重新启动之前和之后使用 SQL Developer 进行连接,并且我还登录了企业管理器 Web 应用程序,它显示了我提到的消息。 2.我可以连接sqlplus...至少看起来是这样的
    • 它起作用了,但我不太明白原因,因为显然我不太了解 Oracle 是如何工作的。我的意思是服务具有已启动状态,为什么我应该使用 sqlplus 执行启动?我在这里很困惑!不过谢谢一百万!!!
    • 无论如何,我创建了一个批处理文件,在登录 Windows 后执行,它通过 sqlplus 调用“启动”,但这仍然是一种解决方法。
    【解决方案2】:

    我将 Sid 值更改为 orcl,它工作正常并建立连接

    【讨论】:

      【解决方案3】:

      你可以试试这个。

      在 Windows 中,转到管理工具->服务,然后向下滚动到显示 Oracle[instanceNameHere] 的位置,查看侦听器和服务本身是否正在运行。您可能必须启动它。您也可以将其设置为在您右键单击它并转到属性时自动启动。

      【讨论】:

      • 我已经提到过检查它们,但谢谢。 '据我检查,服务都已启动并运行。'
      【解决方案4】:

      hibernate.connection.url 设为"jdbc:oracle:thin:@127.0.0.1:1521:xe" 即可解决上述问题。因为 oracle 的默认 SID 是“xe”所以我们应该这样给出。当我给出这样的数据被插入数据库时​​没有任何 SQL 异常,这是我的实时体验。

      【讨论】:

        【解决方案5】:

        以下对我有用(Windows 7):

        oradim -shutdown -sid enter_sid_here
        oradim -startup -sid enter_sid_here
        

        (将enter_sid_here 替换为 SID)

        【讨论】:

          【解决方案6】:
          1. 启动oracleserviceorcl 服务。 (来自任务管理器中的服务)
          2. ORACLE_SID 变量设置为orcl 值。 (在环境变量中)

          【讨论】:

          • 巴黎好小费
          猜你喜欢
          • 2014-04-21
          • 2013-02-10
          • 2015-03-01
          • 1970-01-01
          • 2011-08-05
          • 2019-04-02
          • 2014-06-06
          • 2021-12-30
          • 2018-01-11
          相关资源
          最近更新 更多