老鬼的博客 来都来啦,那就随便看看吧~
CentOS7安装tomcat9
发布于: 2020-08-04 更新于: 2020-08-04 分类于:  阅读次数: 

一:介绍

1
本次主要介绍,如何在CentOS7 上安装tomcat9,并配置service

二:资源下载

7.png

三:具体方法

  • 1.上传服务器
1
上传到/opt/

8.png

  • 2.解压到当前路径下
1
tar -zxvf apache-tomcat-9.0.37.tar.gz

9.png

  • 3.删除apache-tomcat-9.0.37.tar.gz
1
rm -rf apache-tomcat-9.0.37.tar.gz

10.png

  • 4.配置tomcat
1
2
3
4
5
6
7
8
9
10
11
server.xml将:<Connector port="8080"修改成如下:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"
maxThreads="250" maxHttpHeaderSize="8192"
disableUploadTimeout="true"
acceptCount="80" emptySessionPath="true"
enableLookups="false"
compression="500" compressableMimeType="text/html,text/xml,text/plain,application/octet-stream"/>

增加了UTF-8编码,最大并发连接数,MimeType类型等。
  • 5.配置JNDI
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

修改/tomcat/context.xml,加入一下内容:
1.MYSQL
<Resource
name="jdbc/workstation"
auth="Container"
type="javax.sql.DataSource"
maxTotal="100"
maxIdle="30"
maxWaitMillis="10000"
username="root"
password="a123456a"
validationQuery='select 1'
testWhileIdle='true'
factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory"
timeBetweenEvictionRunsMillis='8000'
minEvictableIdleTimeMillis='10000'
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/workstation?autoReconnect=true"
/>
2.SQL Server
<Resource
name="jdbc/workstation"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
username="sa"
password="a123456a"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;DatabaseName=workstation"
/>
  • 6.将tomcat启动设置成服务
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
1.转到/etc/init.d目录下并创建tomcat文件
cd /etc/init.d
vim tomcat
2.复制下面内容到tomcat文件下,并修改相关路径

#!/bin/bash
# dcription: Tomcat9 Start Stop Restart
# processname: tomcat9
# chkconfig: 234 20 80
JAVA_HOME=/opt/jdk1.8.0_251
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH
CATALINA_HOME=/opt/apache-tomcat-9.0.37
case $1 in
start)
sh $CATALINA_HOME/bin/kill.sh
sh $CATALINA_HOME/bin/startup.sh
;;
stop)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/kill.sh
;;
restart)
sh $CATALINA_HOME/bin/shutdown.sh
sh $CATALINA_HOME/bin/kill.sh
sh $CATALINA_HOME/bin/startup.sh
;;
esac
exit 0
3. 编写kill.sh,文件位于/opt/apache-tomcat-9.0.37/bin/kill.sh
写这个shell的原因是为了解决每次tomcat执行./startop.sh和./shutdown.sh
后总是杀不死进程,然后再启动就会报端口号被占用,其中kill.sh的就是杀死
占用8080端口的进程,如果你启动的是其他端口,要把脚本中的端口号改掉。

#!/bin/bash
export PID=`netstat -tnlp|grep 8080 |awk '{print$7}'| awk -F"/" '{print$1}'`
echo 'tomcat 8080 PID is :'$PID
if [ "$PID" != "" ];then
kill -9 $PID
echo 'kill tomcat 8080 port success ...'
else
echo 'tomcat is not run ...'
fi

4.将tomcat修改成可执行文件
chmod a+x tomcat

5.设置服务运行级别
chkconfig --add tomcat

5.测试
service tomcat start
service tomcat stop
service tomcat restart

11.png

12.png

*************感谢您的阅读*************