一、升级前准备
./shutdown.sh
或systemctl stop tomcat
),备份安装目录(如/usr/local/apache-tomcat
→/usr/local/tomcat-backup
)、配置文件(conf/
下的server.xml
、web.xml
等)、Web应用(webapps/
)及日志(logs/
)。备份是升级的核心安全措施,可快速回滚。java -version
验证)。若版本不符,先升级Java。apache-tomcat-9.0.93.tar.gz
),并校验MD5完整性(避免下载损坏)。二、卸载旧版本与安装新版本
mv /usr/local/apache-tomcat /usr/local/apache-tomcat-old
),释放空间。tar -zxvf apache-tomcat-9.0.93.tar.gz -C /usr/local/
),并重命名为标准名称(mv /usr/local/apache-tomcat-9.0.93 /usr/local/apache-tomcat
)。三、迁移配置与应用
conf/
目录下的自定义配置(如server.xml
、tomcat-users.xml
、web.xml
)复制到新版本的conf/
目录。注意:新版本可能调整了配置文件格式(如Tomcat 10的jakarta.*
包名),需手动修改差异部分。webapps/
目录下的应用(WAR包或解压后的项目)复制到新版本的webapps/
目录。若应用依赖旧版Tomcat特性(如Servlet 3.1),需测试兼容性。webapps/
下的默认应用(docs/
、examples/
、manager/
等),减少安全风险和不必要的资源占用。四、启动与验证
bin/
目录,执行./startup.sh
启动服务。若使用系统服务(如systemd
),需更新服务文件(/etc/systemd/system/tomcat.service
)中的CATALINA_HOME
为新路径,再执行systemctl daemon-reload
、systemctl start tomcat
。tail -f /usr/local/apache-tomcat/logs/catalina.out
实时查看启动日志,重点排查ERROR
或SEVERE
级别的错误(如类加载失败、端口冲突)。http://服务器IP:8080
查看Tomcat欢迎页,测试已部署应用的登录、接口调用等功能,确保业务正常。五、回滚方案(可选但关键)
若升级后出现严重问题(如应用无法启动、核心功能失效),可快速回滚:停止新Tomcat服务,删除新版本目录(rm -rf /usr/local/apache-tomcat
),恢复旧版本目录(mv /usr/local/apache-tomcat-old /usr/local/apache-tomcat
),再启动旧版本服务。