CentOS 上 LNMP 升级步骤
一 升级前准备
mysqldump -u root -p --all-databases > full-backup.sql;MariaDB 可用 mariadb-dump。/etc/nginx/、/etc/my.cnf、/etc/php.ini、/etc/php-fpm.d/、/usr/local/nginx/conf/vhost/ 等。/home/wwwroot/ 或自定义目录。二 系统级更新
sudo yum update -ysudo dnf update -y三 组件升级
sudo yum install -y epel-releasesudo yum install -y https://nginx.org/packages/mainline/centos/7/$basearch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpmsudo yum update -y nginxsudo systemctl restart nginxnginx -vwget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm && sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpmsudo yum update -y mysql-community-serversudo systemctl restart mysqldsudo yum update -y mariadb-server mariadbsudo systemctl restart mariadbmysql_upgrade -u root -p(MySQL)以完成系统表升级。mysql -V 或 mariadb -Vsudo yum install -y epel-release https://rpms.remirepo.net/enterprise/remi-release-7.rpmsudo yum-config-manager --enable remi-php74sudo yum update -y php\* 或按需安装扩展(如 php-fpm php-mysqlnd php-mbstring php-xml php-gd php-opcache)sudo systemctl restart php-fpm--enable-fpm --with-mysqli --enable-mbstring --with-zip 等),make && make installphp -v、php -m四 升级后验证与回滚
nginx -v、mysql -V 或 mariadb -V、php -vsystemctl status nginx mysqld php-fpm,确认 active (running)/var/log/nginx/error.log、/var/log/mysqld.log、/var/log/php-fpm.logsudo yum downgrade -y nginx 或切回旧版二进制与配置并 systemctl restart nginxfull-backup.sql,或 sudo yum downgrade -y ... 后重启服务五 常见问题与处理
journalctl -xe 与 Nginx 错误日志定位。configure: error: Please reinstall the libzip distribution,可编译安装 libzip 1.5.x 并确保 cmake ≥ 3.0 后再编译 PHP。Unknown collation: 'utf8mb4_unicode_ci',需使用与目标库版本匹配的备份或在高版本导入后执行 mysql_upgrade。