插件窝 干货文章 LNMP如何更新软件包

LNMP如何更新软件包

更新 sudo Nginx install 164    来源:    2025-05-05

LNMP环境软件包更新指南

LNMP (Linux, Nginx, MySQL/MariaDB, PHP) 环境的软件包更新需要谨慎操作,以避免服务中断或兼容性问题。以下是详细的更新方法:

1. 系统级更新

首先更新系统基础软件包:

# CentOS/RHEL
sudo yum update -y

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

2. Nginx 更新

方法一:通过包管理器

# CentOS/RHEL
sudo yum update nginx

# Ubuntu/Debian
sudo apt install --only-upgrade nginx

方法二:源码编译(获取最新版本)

# 查看当前版本
nginx -v

# 下载最新源码包
wget http://nginx.org/download/nginx-x.x.x.tar.gz
tar zxvf nginx-x.x.x.tar.gz
cd nginx-x.x.x

# 使用原有配置参数(先运行 nginx -V 查看原配置)
./configure [原有参数]
make
sudo make install

3. MySQL/MariaDB 更新

MySQL更新

# CentOS/RHEL
sudo yum update mysql-server

# Ubuntu/Debian
sudo apt install --only-upgrade mysql-server

MariaDB更新

# CentOS/RHEL
sudo yum update mariadb-server

# Ubuntu/Debian
sudo apt install --only-upgrade mariadb-server

重要提示:数据库更新前必须备份数据!

4. PHP 更新

通过包管理器

# CentOS/RHEL
sudo yum update php php-fpm php-mysql

# Ubuntu/Debian
sudo apt install --only-upgrade php php-fpm php-mysql

通过PPA更新(适用于Ubuntu)

sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt upgrade php

5. 其他组件更新

# 更新Redis
sudo apt install --only-upgrade redis-server
# 或
sudo yum update redis

# 更新Memcached
sudo apt install --only-upgrade memcached
# 或
sudo yum update memcached

更新后操作

  1. 重启服务

    sudo systemctl restart nginx
    sudo systemctl restart mysql   # 或 mariadb
    sudo systemctl restart php-fpm
    
  2. 验证版本

    nginx -v
    mysql --version
    php -v
    
  3. 检查日志

    journalctl -xe
    tail -f /var/log/nginx/error.log
    tail -f /var/log/php-fpm/error.log
    

注意事项

  1. 更新前务必备份重要数据和配置文件
  2. 生产环境建议先在测试环境验证更新
  3. 注意版本兼容性,特别是PHP与MySQL/MariaDB之间的版本要求
  4. 考虑使用维护窗口进行更新,避免影响用户访问
  5. 对于重要更新,查看官方更新日志了解变更内容

自动化更新(谨慎使用)

可以设置自动安全更新(仅推荐安全更新):

# Ubuntu/Debian
sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades

# CentOS/RHEL
sudo yum install yum-cron
sudo systemctl enable yum-cron
sudo systemctl start yum-cron

对于生产环境,建议手动控制更新过程以确保稳定性。