Oracle监听无法启动处理随记

0
分享 2016-06-09
早上上班,启动工作电脑,按照习惯,手动启动Oracle数据库,启动监听,数据库是起来了,但是启动监听的时候报如下错误:
SQL> host lsnrctl start

LSNRCTL for 64-bit Windows: Version 12.1.0.1.0 - Production on 27-APR-2016 09:04
:09

Copyright (c) 1991, 2013, Oracle. All rights reserved.

Starting tnslsnr: please wait...

TNSLSNR for 64-bit Windows: Version 12.1.0.1.0 - Production
Log messages written to d:\oracle\diag\tnslsnr\LiuFeng\listener\alert\log.xml
Error listening on: (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12542: TNS:address already in use
TNS-12560: TNS:protocol adapter error
TNS-00512: Address already in use
64-bit Windows Error: 48: Unknown error

Listener failed to start. See the error message(s) above...

从提示的日志上看,是1521端口被占用了,使用netstat查看一下是哪个进程占用了该端口
C:\Users\Esri>netstat -abn|find "1521"
TCP 192.168.100.138:1304 192.168.100.138:1521 ESTABLISHED
TCP 192.168.100.138:1521 192.168.100.138:1304 ESTABLISHED
TCP 192.168.100.138:1559 192.168.220.131:1521 ESTABLISHED

的确是有进程将1521端口作为客户端临时端口被使用了,但是由于find把进程过滤掉了,因此需要使用没有过滤后的信息。
netstat -abn>>ls.txt,将完整信息存储到ls.txt文件中

打开ls.txt文件,发现相关信息
[ArcSOC.exe]
TCP 192.168.100.138:1502 192.168.100.138:1304 ESTABLISHED
[ArcSOC.exe]
TCP 192.168.100.138:1521 192.168.100.138:1304 ESTABLISHED
[ArcSOC.exe]
TCP 192.168.100.138:1526 192.168.100.138:1304 ESTABLISHED
[ArcSOC.exe]
TCP 192.168.100.138:1527 192.168.100.138:1304 ESTABLISHED
[ArcSOC.exe]
TCP 192.168.100.138:1559 192.168.220.131:1521 ESTABLISHED

原来是ArcGIS Server的ArcSOC.exe使用了该端口。由于ArcGIS Server服务是自动启动的,因此在数据库启动前就已经启动了,因此占用是正常的,停掉ArcGIS Server服务,然后再重新监听。
C:\Users\Esri>sc query |find "Arc"
SERVICE_NAME: ArcGIS Server
DISPLAY_NAME: ArcGIS Server

C:\Users\Esri>sc stop "ArcGIS Server"

SERVICE_NAME: ArcGIS Server
TYPE : 10 WIN32_OWN_PROCESS
STATE : 3 STOP_PENDING
(STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x80e8

C:\Users\Esri>lsnrctl start

LSNRCTL for 64-bit Windows: Version 12.1.0.1.0 - Production on 27-APR-2016 09:40
:41

Copyright (c) 1991, 2013, Oracle. All rights reserved.

Starting tnslsnr: please wait...

TNSLSNR for 64-bit Windows: Version 12.1.0.1.0 - Production
Log messages written to d:\oracle\diag\tnslsnr\LiuFeng\listener\alert\log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=LiuFeng)(PORT=1521)))

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for 64-bit Windows: Version 12.1.0.1.0 - Produ
ction
Start Date 27-APR-2016 09:40:46
Uptime 0 days 0 hr. 0 min. 8 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Log File d:\oracle\diag\tnslsnr\LiuFeng\listener\alert\log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=LiuFeng)(PORT=1521)))
The listener supports no services
The command completed successfully

C:\Users\Esri>sc start "ArcGIS Server"

SERVICE_NAME: ArcGIS Server
TYPE : 10 WIN32_OWN_PROCESS
STATE : 2 START_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x7d0
PID : 10100
FLAGS :

顺利启动。
文章来源:http://blog.csdn.net/liufeng1980423/article/details/51258638

0 个评论

要回复文章请先登录注册