oracle - 在 Oracle SQL Developer 中创建新连接时出现 ORA-12505

标签 oracle connection oracle-sqldeveloper

片刻之后我安装了 Oracle 数据库 XE 18.4.0.0.0 (18c)。 接下来,我下载了 Oracle SQL Developer 工具并尝试创建一个新连接,但我收到了这个错误:

enter image description here

主密码正确且监听器正在运行,(@EdStevens 回复后更新):

C:\WINDOWS\system32> lsnrctl start

LSNRCTL for 64-bit Windows: Version 18.0.0.0.0 - Production on 22-OTT-2020 09:04:27

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

Avvio di tnslsnr: attendere...

TNSLSNR for 64-bit Windows: Version 18.0.0.0.0 - Production
Il file dei parametri di sistema Þ C:\app\gabri\product\18.0.0\dbhomeXE\network\admin\listener.ora
Ascolto su: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

Connessione a (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))
STATO del LISTENER
------------------------
Alias                     LISTENER
Versione                  TNSLSNR for 64-bit Windows: Version 18.0.0.0.0 - Production
Data di inizio            22-OTT-2020 09:04:34
Tempo di attivitÓ           0 giorni 0 ore 0 min. 12 sec.
Livello trace             off
Sicurezza                 ON: Local OS Authentication
SNMP                      OFF
File di parametri listenerC:\app\gabri\product\18.0.0\dbhomeXE\network\admin\listener.ora
Summary table degli endpoint di ascolto...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
Summary table dei servizi...
Il servizio "CLRExtProc" ha 1 istanze.
  L'istanza "CLRExtProc", stato UNKNOWN, ha 1 handler per questo servizio...
Il servizio "database" ha 1 istanze.
  L'istanza "XE", stato UNKNOWN, ha 1 handler per questo servizio...
Il comando Þ stato eseguito

这是我的 listener.ora:

# listener.ora Network Configuration File: C:\app\gabri\product\18.0.0\dbhomeXE\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.

DEFAULT_SERVICE_LISTENER = XE

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\app\gabri\product\18.0.0\dbhomeXE)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\app\gabri\product\18.0.0\dbhomeXE\bin\oraclr18.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = PortatileGabriele)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

tnsnames.ora:

# tnsnames.ora Network Configuration File: C:\app\gabri\product\18.0.0\dbhomeXE\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

我希望有人能帮助我!

提前致谢

编辑:

C:\WINDOWS\system32>echo %ORACLE_HOMEd%
%ORACLE_HOMEd%

C:\WINDOWS\system32>echo %ORACLE_SID%
%ORACLE_SID%

C:\WINDOWS\system32>sqlplus / as sysdba'

SQL*Plus: Release 18.0.0.0.0 - Production on Gio Ott 22 14:27:19 2020
Version 18.4.0.0.0

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

ERROR:
ORA-12560: TNS: errore dell'adattatore del protocollo


Immettere il nome utente: SYSTEM
Immettere la password:
ERROR:
ORA-12560: TNS: errore dell'adattatore del protocollo


Immettere il nome utente:

最佳答案

首先,错误“listener does not know of sid”是绝对正确的。我们从“lsnrctl status”中看到没有数据库 注册到监听器。因此,在您真正启动数据库并向监听器注册之前,其他一切都不重要。

其次,一旦您确实运行了数据库,您的 SQL Dev“连接类型”为“基本”意味着您将直接提供所有必要的连接信息,并且不会调用 tnsnames.ora。这没有错,但是如果您确实想使用 tnsnames,请将您的连接类型更改为“tns”。相应更改的必要输入字段。

第三,如前所述,无论是使用tns还是basic connection,都要指定service name,而不是sid。

关于oracle - 在 Oracle SQL Developer 中创建新连接时出现 ORA-12505,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64469854/

相关文章:

sql-server - 输出使用动态 PL/SQL 执行的 SELECT 的结果

python mysql自定义重新连接类不保持服务器连接打开

oracle - 使用缩写表名时转义 Oracle 中保留字的语法

sql - 如何使用Oracle SQL Developer导出数据?

sql - 使用从第二行到最后一行的数据更新最后一行

sql - 将一列拆分或子化为多列

java - SimpleJDBCTemplate 和日期参数在某些情况下会给出奇怪的结果

php - 无法使用 MySQL Workbench 访问 WordPress 数据库

oracle - 如何使用MyBatis配置Oracle的数据库网络加密?

sql - 在 Oracle SQL Developer 中使用引用游标