我已经在 Manjaro Linux 上安装了 ORACLE SQL。但重启 PC 后,SQL 开发人员中出现以下错误:
An error was encountered performing the requested operation:
IO Error: The Network Adapter could not establish the connection
Vendor code 17002
我检查了监听器是否正在运行:
[akoley@animesh-pc ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 06-AUG-2019 21:03:48
Copyright (c) 1991, 2011, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=animesh-pc)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
我也尝试启动它:
akoley@animesh-pc ~]$ lsnrctl start
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 06-AUG-2019 21:05:15
Copyright (c) 1991, 2011, Oracle. All rights reserved.
Starting /usr/lib/oracle/product/11.2.0/xe/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 11.2.0.2.0 - Production
System parameter file is /usr/lib/oracle/product/11.2.0/xe/network/admin/listener.ora
Log messages written to /usr/lib/oracle/product/11.2.0/xe/log/diag/tnslsnr/animesh-pc/listener/alert/log.xml
Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
TNS-12555: TNS:permission denied
TNS-12560: TNS:protocol adapter error
TNS-00525: Insufficient privilege for operation
Linux Error: 1: Operation not permitted
Listener failed to start. See the error message(s) above...
我的监听器文件是这样的:
[akoley@animesh-pc ~]$ cat /usr/lib/oracle/product/11.2.0/xe/network/admin/listener.ora
# listener.ora Network Configuration File:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /usr/lib/oracle/product/11.2.0/xe)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = animesh-pc)(PORT = 1521))
)
)
DEFAULT_SERVICE_LISTENER = (XE)
答案1
在 Services.msc 中,右键单击 Oracle...TNSLister 进入属性。将登录设置为本地系统帐户。重新启动它并通过从命令行运行“lsnrctl status”来获取状态。