溫馨提示×

Linux Tomcat如何更新與升級

小樊
52
2025-09-27 20:42:54
欄目: 智能運維

一、升級前準備工作

  1. 備份現有環境:備份Tomcat安裝目錄(如/usr/local/apache-tomcat)、配置文件(server.xml、web.xml、context.xml等)、Web應用(webapps目錄)及數據庫(如涉及)。建議備份到獨立目錄(如/usr/local/tomcat-backup),防止數據丟失。
  2. 檢查兼容性:確認新版本Tomcat與當前Java版本匹配(如Tomcat 9需Java 8+、Tomcat 10需Java 11+),并查閱官方文檔確認應用框架(如Spring Boot)與新版本Tomcat的兼容性。
  3. 下載新版本:前往Apache Tomcat官網下載穩定版壓縮包(如Tomcat 9.0.93的apache-tomcat-9.0.93.tar.gz),推薦使用wget命令(wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.93/bin/apache-tomcat-9.0.93.tar.gz)。

二、停止Tomcat服務 使用systemctl或service命令停止運行中的Tomcat,避免升級過程中文件沖突:

# 使用systemctl(推薦)
sudo systemctl stop tomcat
# 或使用service(舊版系統)
sudo service tomcat stop

停止后,可通過ps -ef | grep tomcat確認進程已終止。

三、卸載舊版本(可選但推薦) 若舊版本是通過包管理器安裝(如Ubuntu的APT、CentOS的YUM),可使用以下命令卸載:

# Debian/Ubuntu
sudo apt remove --purge tomcat
# RHEL/CentOS
sudo yum remove tomcat

卸載后,手動刪除殘留的配置文件和數據目錄(如/var/lib/tomcat)。

四、安裝新版本

  1. 解壓新版本:將下載的壓縮包解壓到目標目錄(如/usr/local/):
    tar -zxvf apache-tomcat-9.0.93.tar.gz -C /usr/local/
    
  2. 重命名目錄:為方便管理,將解壓后的目錄重命名為明確版本號(如apache-tomcat-9.0.93)。

五、遷移配置與數據

  1. 復制配置文件:將舊版本的配置文件復制到新版本的conf目錄(保留server.xml、web.xml等自定義配置):
    cp -Rf /usr/local/apache-tomcat/conf/* /usr/local/apache-tomcat-9.0.93/conf/
    
  2. 遷移Web應用:將舊版本的webapps目錄下的應用復制到新版本的webapps目錄(可選擇僅遷移必要應用,如ROOT.war或業務應用):
    cp -Rf /usr/local/apache-tomcat/webapps/* /usr/local/apache-tomcat-9.0.93/webapps/
    
  3. 清理默認項目:刪除新版本中的默認示例項目(如docs、examples),提升安全性:
    rm -rf /usr/local/apache-tomcat-9.0.93/webapps/docs /usr/local/apache-tomcat-9.0.93/webapps/examples
    
  4. 設置權限:為新版本的bin目錄下的腳本添加可執行權限:
    chmod +x /usr/local/apache-tomcat-9.0.93/bin/*.sh
    

六、啟動新版本并驗證

  1. 啟動Tomcat:進入新版本的bin目錄,執行啟動腳本:
    cd /usr/local/apache-tomcat-9.0.93/bin
    ./startup.sh
    
  2. 檢查啟動日志:通過tail命令實時查看catalina.out日志,確認無錯誤(如端口沖突、類加載失?。?pre class="hljs">tail -f /usr/local/apache-tomcat-9.0.93/logs/catalina.out
  3. 驗證服務
    • 訪問http://服務器IP:8080,查看Tomcat默認頁面是否加載;
    • 訪問業務應用URL,確認功能正常;
    • 使用ps -ef | grep tomcat確認進程運行中,netstat -tulnp | grep 8080確認端口監聽正常。

七、配置為系統服務(可選但推薦) 若舊版本已配置為systemd服務,需更新服務文件指向新版本路徑:

  1. 編輯服務文件(如/etc/systemd/system/tomcat.service):
    sudo nano /etc/systemd/system/tomcat.service
    
  2. 修改EnvironmentExecStart/ExecStop路徑為新版本目錄:
    [Unit]
    Description=Apache Tomcat Web Application Container
    After=network.target
    
    [Service]
    Type=forking
    Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
    Environment=CATALINA_PID=/usr/local/apache-tomcat-9.0.93/temp/tomcat.pid
    Environment=CATALINA_HOME=/usr/local/apache-tomcat-9.0.93
    Environment=CATALINA_BASE=/usr/local/apache-tomcat-9.0.93
    ExecStart=/usr/local/apache-tomcat-9.0.93/bin/startup.sh
    ExecStop=/usr/local/apache-tomcat-9.0.93/bin/shutdown.sh
    User=tomcat
    Group=tomcat
    RestartSec=10
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    
  3. 重新加載systemd并重啟服務:
    sudo systemctl daemon-reload
    sudo systemctl restart tomcat
    sudo systemctl enable tomcat  # 設置開機自啟
    

八、回滾方案(可選) 若升級后出現嚴重問題(如無法啟動、應用崩潰),可快速回滾到舊版本:

  1. 停止新版本Tomcat;
  2. 刪除新版本目錄(如/usr/local/apache-tomcat-9.0.93);
  3. 恢復舊版本目錄(如mv /usr/local/apache-tomcat-old /usr/local/apache-tomcat);
  4. 啟動舊版本Tomcat并驗證服務。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女