如果启动异常会有对应的异常信息,比如:
STATUS | wrapper | 2015/02/14 01:43:44 | STATUS | wrapper | 2015/02/14 01:43:44 | Launching a JVM... INFO | jvm 1 | 2015/02/14 01:43:45 | Error: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: 1984; nested exception is: INFO | jvm 1 | 2015/02/14 01:43:45 | java.net.BindException: Address already in use ERROR | wrapper | 2015/02/14 01:43:45 | JVM exited while loading the application.
日志显示异常原因为java.net.BindException: Address already in use,也就是端口占用,很有可能是原有服务未停止,或者Mycat默认端口被其他程序占用,正常启动成功后会有mycat.log日志,如果服务未启动成功不会有对应的日志。
1、Windows平台
在windows命令行窗口下执行:
1.查看所有的端口占用情况
C:\>netstat -ano
协议 本地地址 外部地址 状态 PID
TCP 127.0.0.1:1434 0.0.0.0:0 LISTENING 3236
TCP 127.0.0.1:5679 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:7438 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:8015 0.0.0.0:0 LISTENING 1456
TCP 192.168.3.230:139 0.0.0.0:0 LISTENING 4
TCP 192.168.3.230:1957 220.181.31.225:443 ESTABLISHED 3068
TCP 192.168.3.230:2020 183.62.96.189:1522 ESTABLISHED 1456
TCP 192.168.3.230:2927 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2929 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2930 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2931 117.79.91.18:80 ESTABLISHED 4732
2.查看指定端口的占用情况
C:\>netstat -aon|findstr "9050"
协议 本地地址 外部地址 状态 PID
TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING 2016
P: 看到了吗,端口被进程号为2016的进程占用,继续执行下面命令: (也可以去任务管理器中查看pid对应的进程)
3.查看PID对应的进程
C:\>tasklist|findstr "2016"
映像名称 PID 会话名 会话# 内存使用
========================= ======== ================
tor.exe 2016 Console 0 16,064 K
P:很清楚吧,tor占用了你的端口。
4.结束该进程
C:\>taskkill /f /t /im tor.exe
lsof -i:1984
kill -9 24290
再重启
Linux通过PID查看进程完整信息
[root@gsidc-4q-saas23 ~]# netstat -anp|grep 8282
tcp 0 0 :::8282 :::* LISTEN 16923/java
[root@gsidc-4q-saas23 ~]# ps -ef|grep 16923
root 7270 7128 0 10:55 pts/6 00:00:00 grep 16923
mbs 16923 1 0 2017 ? 00:33:22 /home/mbs/jdk1.7.0_79/bin/java -Djava.util.logging.config.file=/home/mbs/xct-manage/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -Xms64m -Xmx1024m -XX:MaxPermSize=256m -XX:+UseParallelGC -XX:+DisableExplicitGC -XX:+HeapDumpOnOutOfMemoryError -Ddubbo.registry.file=dubbo.cache -Djava.endorsed.dirs=/home/mbs/tomcat/endorsed -classpath /home/mbs/tomcat/bin/bootstrap.jar:/home/mbs/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/home/mbs/xct-manage/tomcat -Dcatalina.home=/home/mbs/tomcat -Djava.io.tmpdir=/home/mbs/xct-manage/tomcat/temp org.apache.catalina.startup.Bootstrap start
[root@gsidc-4q-saas23 ~]#
1、netstat -anp|grep 8282
查看此端口的占用情况;16923为pid
2、ps -ef|grep 16923
查看该pid的进程的详细信息;
不积跬步无以至千里,不积小流无以成江海