首页主机资讯如何升级Linux LNMP版本

如何升级Linux LNMP版本

时间2025-11-20 22:03:04发布访客分类主机资讯浏览961
导读:升级前准备与总体策略 明确升级范围:是仅做安全补丁级的小版本更新,还是跨版本的大版本升级(如 PHP 7.x → 8.x、MySQL 5.7 → 8.0)。 完整备份: 数据与配置:数据库全量备份(如 mysqldump --all-d...

升级前准备与总体策略

  • 明确升级范围:是仅做安全补丁级的小版本更新,还是跨版本的大版本升级(如 PHP 7.x → 8.xMySQL 5.7 → 8.0)。
  • 完整备份:
    • 数据与配置:数据库全量备份(如 mysqldump --all-databases)、网站目录(如 /var/www)、Nginx/PHP 配置(如 /etc/nginx//etc/php/)。
    • 版本快照:记录当前组件版本(见下方“版本检查命令”)。
  • 兼容性评估:核对应用对 PHP 扩展/语法MySQL 版本特性Nginx 模块的兼容性,必要时先在测试环境验证。
  • 回滚方案:保留旧版本二进制/安装包与配置,准备快速回滚脚本或服务切换方案。
  • 维护窗口与通知:选择低峰时段,提前通知业务方。

版本检查与升级路径

  • 版本检查命令:
    • Nginx:nginx -v
    • MySQL:mysql -V 或登录后执行 SELECT VERSION();
    • PHP:php -v
  • 升级路径建议:
    • 小版本(安全/补丁):优先使用系统包管理器在线升级,步骤简单、回滚容易。
    • 大版本(跨主线):建议新建并并行一套环境进行灰度验证,验证通过后切换流量(如 Nginx upstream 切换或负载均衡权重调整)。
  • 兼容性要点:
    • PHP 主版本升级常伴随扩展与语法变更(如废弃/移除扩展、参数默认值变化)。
    • MySQL 8.0 在认证、数据类型、默认值等方面变化较大,需重点验证应用连接与 SQL 行为。
    • Nginx 与 PHP-FPM 通过 FastCGI 通信,通常无直接版本耦合,但需确保 **PHP-FPM 监听方式(TCP/Unix Socket)**与 Nginx 配置一致。

按发行版执行升级

  • Debian/Ubuntu(APT 系)
    • 系统与组件更新:
      • 更新索引:sudo apt update
      • 安全/补丁升级:sudo apt upgrade
      • 跨版本升级(如 Ubuntu 20.04 → 22.04):sudo do-release-upgrade
    • Nginx:sudo apt install --only-upgrade nginx & & sudo systemctl restart nginx
    • MySQL/MariaDB:
      • 备份:mysqldump -u root -p --all-databases > backup.sql
      • 升级:sudo apt install --only-upgrade mysql-server(或 mariadb-server
      • 安全设置:sudo mysql_secure_installation
    • PHP:
      • 升级 CLI/FPM 与常用扩展:sudo apt install --only-upgrade php php-fpm php-mysql
      • 按需补充扩展(如 php-gd 等),完成后重启:sudo systemctl restart php-fpm
    • 验证:nginx -vmysql -Vphp -v
  • CentOS/RHEL(YUM/DNF 系)
    • 系统与组件更新:
      • sudo yum update(或 sudo dnf upgrade
    • Nginx:sudo yum install --only-upgrade nginx & & sudo systemctl restart nginx
    • MySQL/MariaDB:
      • 备份:mysqldump -u root -p --all-databases > backup.sql
      • 升级:sudo yum install --only-upgrade mysql-server(或 mariadb-server
      • 安全设置:sudo mysql_secure_installation
    • PHP(以 PHP 7.4 为例):sudo yum install php php-fpm php-mysqlnd & & sudo systemctl restart php-fpm
    • 验证:nginx -vmysql -Vphp -v
  • 说明:以上为常见路径,具体包名与可用版本取决于你的发行版版本与仓库配置。

使用 LNMP 一键安装包的升级

  • 适用场景:你最初通过 lnmp.org 的一键安装包部署。
  • 基本流程:
    • 进入安装包目录(如 /usr/local/lnmp1.6/),执行升级脚本:./upgrade.sh(按交互选择组件与目标版本)。
    • 跨大版本管理脚本升级(如 1.5 → 1.8):
      • 下载并解压新版本脚本:wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz & & tar zxf lnmp1.8.tar.gz & & cd lnmp1.8
      • 执行升级脚本:./upgrade1.x-1.8.sh
    • 升级完成后用 php -v 等命令核对版本。
  • 重要提示:一键包升级脚本面向其自身目录结构与组件组合,跨版本升级务必先备份并按脚本指引操作。

升级后验证与回滚

  • 快速验证:
    • 进程与端口:systemctl status nginx php-fpm mysqld,确认监听端口(如 80/4439000socket)正常。
    • 版本核对:nginx -vmysql -Vphp -v;检查关键扩展(如 mysqli/pdo_mysqlgdopcache)。
    • 应用自检:登录后台、执行关键业务操作,查看 Nginx error.logPHP-FPM error.logMySQL error.log 是否有异常。
  • 性能与安全:
    • 适度调整 Nginx worker_processes/worker_connectionsPHP-FPM pm.max_children/opcache 等参数;关闭不必要的模块与扩展,收紧目录权限。
  • 回滚策略:
    • 包管理升级:使用包管理器降级到旧版本或快照回滚(如 apt install package=versionyum downgrade)。
    • 源码/一键包:切换到备份的旧目录或旧安装包,恢复数据库与配置文件后重启服务。
  • 风险提示:跨大版本升级(尤其是 MySQL 5.7 → 8.0PHP 7.x → 8.x)可能引发兼容性问题;务必在测试环境充分验证,并在维护窗口内执行。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何升级Linux LNMP版本
本文地址: https://pptw.com/jishu/752502.html
LNMP中MySQL如何恢复数据 如何在Linux LNMP上部署网站

游客 回复需填写必要信息