记一次公司新服务器Ubuntu16.04.6初始化配置 (四) tomcat8.5.41使用shutdown.sh或者catalina.sh stop停止不了问题

错误原文:
cat: ./: Is a directory Using CATALINA_BASE: /usr/local/apache-tomcat-8.5.41 Using CATALINA_HOME: /usr/local/apache-tomcat-8.5.41 Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.41/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/apache-tomcat-8.5.41/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.41/bin/tomcat-juli.jar Using CATALINA_PID: ./ $CATALINA_PID was set but the specified file does not exist. Is Tomcat running? Stop aborted.
CATALINA_PID变量设置了但是不存在,这个问题也是老问题,之前遇到并解决过,但是没有记录,这里做下记录。
解决方法:
1 在tomcat的bin目录下创建CATALINA_PID文件,随意添加一个PID(这个PID下次重启tomcat时会被重写)
cd /usr/local/apache-tomcat-8.5.41/bin
vim CATALINA_PID 输入3210(随意数字,代表PID),然后wd保存退出
2 编辑 catalina.sh文件,添加配置CATALINA_PID路径 如图
在这里插入图片描述
由于我使用的是openjdk8 没手动配置JAVA_HOME,所以要在这里指定一下JAVA_HOME,catalina.sh文件内很多都用到了这个配置,需要配置上。

3 编辑 catalina.sh文件 添加重写CATALINA_PID文件的配置
if [ -z "$CATALINA_PID" ]; then
CATALINA_PID=$PRGDIR/$CATALINA_PID
cat $CATALINA_PID
fi
在这里插入图片描述
然后重启服务器 或者 kill掉已启动的tomcat进程,再次使用shutdown.sh或者catalina.sh stop停止tomcat,成功停止。


另外在配置自动启停脚本的时候还遇到一个错误:
java.net.ConnectException: Connection refused (Connection refused) at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at java.net.Socket.connect(Socket.java:538) at java.net.Socket.<init>(Socket.java:434) at java.net.Socket.<init>(Socket.java:211) at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:504) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:406) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:498)
解决方法:
catalina.sh文件里添加下面配置(其中一些参数根据自身情况配置)再重启服务即可:
JAVA_OPTS="-Djava.security.egd=file:/dev/./urandom -server -Xms800M -Xmx800M -XX:NewRatio=1 -XX:SurvivorRatio=4 -XX:MetaspaceSize=64M -XX:MaxMetaspaceSize=256M -XX:+UseCompressedClassPointers -XX:CompressedClassSpaceSize=128M -XX:ReservedCodeCacheSize=128M -XX:ParallelGCThreads=20 -XX:+UseConcMarkSweepGC -XX:+UnlockDiagnosticVMOptions -XX:+PrintNMTStatistics -XX:HeapDumpPath=$CATALINA_BASE/dump/dump.dump -Djava.awt.headless=true"
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值