我已经在我的本地机器上安装了 Oracle 18c,并且我创建了一个用户名
USER_NAME := c##scott
Passkey : oracle
当我曾经使用 cmd 连接到该用户时。正在填充以下错误。
Command: sqlplus c##scott/oracle@agndev
ERROR:
ORA-12541: TNS:no listener
检查侦听器错误后,我重新检查了侦听器文件
监听文件:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = D:\ora_base)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:D:\ora_base\bin\oraclr18.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = AGNDEV))
)
)
Tnsnames.ora 文件:
# tnsnames.ora Network Configuration File: D:\ora_base\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)
)
)
AGNDEV =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = AGNDEV)
)
)
我是 18c 的新手,谁能说出这个错误的解决方案。
谢谢你。
错误消息清楚地表明没有侦听器正在侦听请求的地址。
检查它是否正在运行 (
lsnrctl status
),并在必要时启动它 (lsnrctl start
)。在 Windows 上,您需要在以管理员权限启动的命令提示符中执行此操作,因为它还会启动 Windows 服务。或者,您可以启动名为 的 Windows 服务OracleOraDB18Home1TNSListener
。KEY
您为文件中的参数设置了错误的值listener.ora
。它应该EXTPROC1521
如下所示: