2

我正在尝试安装并运行这个数据库一个星期......;<我之前尝试过使用 Oracle 12 c 标准版,但它不起作用 - 我不知道为什么;(现在我已经卸载了(我相信) 12 c 并安装了 18 XE..

在 SQL Plus 上,我有: ORA-12560: TNS:protocol adapter error service is running when I try to login as sysdba

services.msc 上的所有服务都在运行: - OracleOraDB18Home1MTSRecoveryService - OracleOraDB18Home1TNSListener - OracleRemExecServiceV2 - OracleServiceXE - OracleVssWriterXE

在命令行上,当我输入“lsnrctl status”时,我有:

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=DESKTOP-*******)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 64-bit Windows: Version 18.0.0.0.0 - Production
Start Date                23-NOV-2019 10:41:47
Uptime                    0 days 11 hr. 36 min. 34 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Default Service           XE
Listener Parameter File   C:\app\*****\product\18.0.0\dbhomeXE\network\admin\listener.ora
Listener Log File         C:\app\*****\product\18.0.0\diag\tnslsnr\DESKTOP-*******\listener\alert\log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=DESKTOP-*******)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
Services Summary...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

在 SQL Developer 上,我有 2 个错误之一,具体取决于我在那里写的内容: - 状态:失败 - 网络适配器无法建立连接 - 状态:失败 - 测试失败:侦听器拒绝连接并出现以下错误:ORA-12514 , TNS:listener 目前不知道连接描述符中请求的服务

我不知道我在做什么。我只想尽快安装并运行它,以便在示例数据库上练习考试:(这是我的电脑,没有虚拟机或在线服务器

请帮我调查这个问题 - 我检查了几个答案,即使在这个网站上,但我不能很好地理解它们,那里的信息比我需要的多得多......

4

1 回答 1

0

您的异常消息...

TNS:监听器当前不知道连接描述符中请求的服务

...以及您的听众状态...

服务摘要...
服务“CLRExtProc”有 1 个实例。
实例“CLRExtProc”,状态 UNKNOWN,有 1 个用于此服务
的处理程序...命令成功完成

...确切地说出了什么问题。您的 TNS 侦听器不知道您的 Oracle DB 服务。

您可能是正确的,您的 Windows“Oracle DB”服务正在运行;但是,这并不意味着您的 Oracle 实例正在运行。首先,从有权在本地登录的 Windows 用户以管理员身份登录到您的 Oracle DB...

set ORACLE_SID=fill_in_the_SID_of_your_Oracle_instance_here
sqlplus / as sysdba

……然后跑……

alter system set local_listener = <fill_in_your_local_listener_SID_here>
alter system register;

这应该将您的数据库服务注册到您的 TNS 侦听器,前提是您在服务器的tnsnames.ora...

<fill_in_your_local_listener_SID_here> = (address = (protocol = tcp)(host = 127.0.0.1)(port = 1521))

太复杂了,我知道。这就是为什么最好(对于没有 Oracle DBA 技能的新开发人员)使用上面@thatjeffsmith 评论所建议的预先创建的 VM 映像。

于 2019-11-26T08:20:21.163 回答