【发布时间】:2017-11-08 21:14:09
【问题描述】:
我最近在 CentOS 7 上安装了 Oracle 11G XE。由于某种原因,监听器在启动后停止工作。我正在使用用于安装数据库实例的用户登录服务器。要运行lsnrctl 命令,我需要更改为名为@987654323@ 的用户,并在每次更改为该用户时加载环境变量,使用命令. ./dbenv.sh。
这是我执行lsnrctl start时的结果:
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 08-NOV-2017 14:48:35
Copyright (c) 1991, 2011, Oracle. All rights reserved.
Starting /u01/app/oracle/product/11.2.0/xe/bin/tnslsnr: please wait...
TNSLSNR for Linux: Version 11.2.0.2.0 - Production
System parameter file is /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/localhost/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.1.100)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.2.0 - Production
Start Date 08-NOV-2017 14:48:37
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Default Service XE
Listener Parameter File /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/localhost/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.16.1.100)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
当我在几秒钟后执行命令 lsnrctl status 时,会显示如下内容:
LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 08-NOV-2017 14:49:13
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=172.16.1.100)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
我的 listener.ora 文件包含以下内容:
# listener.ora Network Configuration File:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/xe)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.100)(PORT = 1521))
)
)
【问题讨论】:
-
你的
instance_name&db_name是长度为10的PLSExtProc,详情请看stackoverflow.com/questions/47170940/… -
看看 /u01/app/oracle/diag/tnslsnr/localhost/listener/alert/listener.log 说了什么?
-
谢谢两位。 CentOS 安装崩溃,我们决定重新安装操作系统,现在我们选择 Oracle Linux 6.9 发行版。我们现在遇到的问题是来自 Linux 和 Mac 的连接正常,但 Windows 连接被拒绝。你知道为什么会这样吗?
标签: oracle oracle11g listener centos7