【发布时间】:2017-12-16 14:36:42
【问题描述】:
在连接数据库时,即使使用 connect sys/sys 作为 sysdba,我也会收到以下错误:
ORA-12560:TNS:协议适配器错误
我的所有服务和数据库都已启动。
我的 lsnrctl 状态:
我尝试了所有找到的方法,但仍然没有答案。我重装了4次。我使用的是 Oracle 数据库 11g 快捷版。
我的环境变量:
ORACLE_BASE: D:\OracleDB
ORACLE_HOME: D:\OracleDB\app\oracle\product\11.2.0\server
路径: D:\OracleDB\app\oracle\product\11.2.0\server\bin
ORACLE_SID: ORCL(我不知道它是否正确,但我在某个地方看到所以我补充说,我不知道我的 SID 是什么,因为我无法在任何地方连接,也许你情况下)
我做错了什么?一个月前它还在工作,今天当我想做某事时,它就停止了工作。不知道我是否安装了与之冲突的东西。怎么查?
【问题讨论】:
-
最好将状态输出包含为文本而不是图像。您还没有向我们展示您尝试连接的方式 - 您正在使用哪个客户端、哪些参数或设置或连接 URL。例如,您是否使用主机名
wran?解析到什么IP?您应该使用服务名称 XE(而不是 SID)进行连接,但据此,该服务实际上不可用。这表明您的数据库没有运行,或者既然您说它在运行,它就无法向侦听器注册,这也可能是 IP 混淆。 -
@AlexPoole 我正在使用 sqlplus 并试图连接到数据库,所以你说这可能是主机名的问题?我正在考虑,但它是安装后的状态,我自己没有改变任何东西。 Localhost:8080/apex 也不行,我忘了提这个
-
如果您只是在 SQL*Plus 提示符下进行连接,提示您设置了 TWO_TASK 或(因为这是 Windows)LOCAL,因此请查找 tnsnames.ora 文件并查看那里的匹配条目已配置。
-
这就是我的 tnsnames.ora 的样子:pastebin.com/6FniPchm 我应该将我的主机更改为 localhost 吗?
-
当我使用 tnsping xe 时,它说 ping 正常(0 毫秒)