1. 备份旧版本
更新前务必备份Tomcat安装目录、配置文件及数据,避免操作失误导致数据丢失。
# 备份Tomcat安装目录(假设原路径为/usr/share/tomcat) sudo cp -r /usr/share/tomcat /usr/share/tomcat-backup-$(date +%Y%m%d%H%M%S) # 备份配置文件(如/conf、/webapps等) sudo cp -r /etc/tomcat /etc/tomcat-backup-$(date +%Y%m%d%H%M%S) 2. 停止Tomcat服务
sudo systemctl stop tomcat 1. 下载新版本Tomcat
访问Tomcat官方网站(https://tomcat.apache.org),选择所需版本(如Tomcat 9.0.56),下载二进制压缩包(如apache-tomcat-9.0.56.tar.gz)。
wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz 2. 解压并替换旧版本
将下载的压缩包解压到Tomcat安装目录(如/usr/share/),并重命名新目录:
sudo tar xvf apache-tomcat-9.0.56.tar.gz -C /usr/share/ sudo mv /usr/share/apache-tomcat-9.0.56 /usr/share/tomcat 3. 更新环境变量(若路径变更)
编辑/etc/profile.d/tomcat.sh文件,更新CATALINA_HOME为新版本路径:
sudo nano /etc/profile.d/tomcat.sh 添加/修改以下内容:
export CATALINA_HOME=/usr/share/tomcat export PATH=$PATH:$CATALINA_HOME/bin 保存后使环境变量生效:
source /etc/profile.d/tomcat.sh 4. 更新启动脚本(可选)
若/etc/systemd/system/tomcat.service中的ExecStart路径未自动更新,需手动修改:
sudo nano /etc/systemd/system/tomcat.service 找到ExecStart行,将路径改为新版本目录(如/usr/share/tomcat/bin/startup.sh),保存后重新加载systemd配置:
sudo systemctl daemon-reload 5. 启动Tomcat并验证
sudo systemctl start tomcat sudo systemctl status tomcat # 检查服务状态 curl http://localhost:8080 # 验证Tomcat是否运行(应显示默认页面) 1. 更新YUM仓库
sudo yum update 2. 移除旧版本Tomcat(可选)
若已通过YUM安装旧版本,可先移除以避免冲突:
sudo yum remove tomcat 3. 安装新版本Tomcat
添加Tomcat YUM仓库(如EPEL或Apache官方仓库),然后安装指定版本:
# 添加EPEL仓库(若未安装) sudo yum install epel-release # 安装Tomcat 9 sudo yum install tomcat9 4. 启动Tomcat并验证
sudo systemctl start tomcat sudo systemctl enable tomcat # 设置开机自启 curl http://localhost:8080 # 验证版本 server.xml、context.xml等配置文件是否有语法错误或不兼容的参数。/usr/share/tomcat/logs/catalina.out)定位问题。sudo firewall-cmd --permanent --add-port=8080/tcp sudo firewall-cmd --reload sudo rm -rf /usr/share/tomcat-backup-* sudo rm apache-tomcat-*.tar.gz 以上流程覆盖了CentOS下Tomcat更新的主要场景,可根据实际情况选择手动或YUM方式操作。