SQLPLUS / AS SYSDBA 登录失败 ORA-12560

SQLPLUS / AS SYSDBA failed to login ORA-12560

我得到

ERROR:
ORA-12560: TNS:protocol adapter error

尝试以 SYSDBA 身份登录时出现适配器错误。我做了一些研究,发现首先在 Windows 服务中没有任何 OracleJobSchedulerdb12gr1OracleServicedb12gr1 .. e.t.c。

所以我确实添加了它们并开始:

C:\Windows\system32>oradim -new -sid db12gr1

所以我也开始监听:

C:\Windows\system32>lsnrctl start

之后,当我检查状态时,我得到:

C:\Windows\system32>lsnrctl status

Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\.\pipe\EXTPROC1ipc)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
Services Summary...
Service "XE" has 1 instance(s).
  Instance "XE", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully

不确定 UNKNOWN 是否是我从 listener.ora 中删除每个其他 SID_LIST_LISTENER 的问题并且 LISTENER 看起来像这样(在 listener.ora 中) :

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

此外,我已将我的 ORACLE_HOME 正确设置为 env vars 并添加到 bin 文件夹的路径中,以便我可以访问 sqlplus。在我尝试以 sysdba 身份登录之前,定义 ORACLE_SID (set ORACLE_SID=localhost) 没有任何区别。我也能够启动服务并仅从以管理员身份打开的命令提示符启动侦听器当然我仍然不能 sqlplus / as sysdba.

tnsnames.ora:

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

ORACLR_CONNECTION_DATA = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) 
    ) 
    (CONNECT_DATA = 
      (SID = CLRExtProc) 
      (PRESENTATION = RO) 
    ) 
  ) 
XE =
  (DESCRIPTION =
   (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      (CONNECT_DATA =
        (SERVER = DEDICATED)
        (SERVICE_NAME = XE)
     )
  )

我真是没脑子了。有人知道这可能要花多少钱吗?

PS: OS: Windows 10 ;甲骨文:12c

您必须将 ORACLE_SID 环境变量设置为正确的值: 设置 ORACLE_SID=db12gr1 并确保您的实例服务已正确启动。

让我们这样做:
1. 打开 Oracle 网络配置助手
2. Select Local Net Service Name Configuration 单选按钮选项,然后单击 Next
3. Reconfigure中的Select单选按钮选项,然后点击下一步
4. Select 您要重新配置的网络服务名称,ORACLR_CONNECTION_DATA 或 ORCL,然后单击下一步
5.输入你的Service Name,如果你安装的oracle的服务名是ORCL,那么在字段里写ORCL,然后点击Next
6.select你要使用的协议,例如selectTCP,然后点击下一步
7. 输入你的oracle数据库引擎(服务)安装的主机名,比如安装在你的台式机或笔记本上,
然后填写为 localhost,并填写您的端口号(select 选项使用标准端口号 1521)或者如果使用其他端口,填写端口号
然后点击下一步。
8. select 是执行测试,
如有必要,更改用户登录
然后点击下一步
9.如果没有配置另一个网络服务名,select否然后点击下一步
10. 单击完成

你应该下载、解压缩并安装 ODTwithODAC183.zip 和 BuildTools_Full.exe 如果你想使用从 MS Visual Studio

连接到 .net 框架