一、升级前准备
./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),再启动旧版本服务。