菜鸟科技网

如何正确重启LNMP服务命令?

最推荐、最安全的方法是使用 systemctl 命令(适用于 CentOS 7+, Debian 8+, Ubuntu 16.04+ 等现代 Linux 发行版)。

如何正确重启LNMP服务命令?-图1
(图片来源网络,侵删)

使用 systemctl (推荐)

这是目前最主流和推荐的方式,因为它能确保服务被正确地启动、停止和管理。

重启 Nginx

sudo systemctl restart nginx

或者,如果你想先停止再启动(效果相同,但命令不同):

sudo systemctl stop nginx
sudo systemctl start nginx

重启 MySQL 或 MariaDB

根据你的服务器安装的是 MySQL 还是 MariaDB,选择对应的命令。

对于 MySQL:

如何正确重启LNMP服务命令?-图2
(图片来源网络,侵删)
sudo systemctl restart mysql

对于 MariaDB:

sudo systemctl restart mariadb

重启 PHP-FPM

PHP-FPM (FastCGI Process Manager) 是 PHP 在 LNMP 架构中最常用的运行方式。

对于 PHP 7.x 版本:

sudo systemctl restart php7.4-fpm  # 请将 7.4 替换为你实际的 PHP 版本,如 php7.2, php7.3, php8.0, php8.1 等

对于 PHP 8.x 版本:

如何正确重启LNMP服务命令?-图3
(图片来源网络,侵删)
sudo systemctl restart php8.1-fpm  # 请将 8.1 替换为你实际的 PHP 版本

提示: 如何查看我的 PHP 版本? 你可以使用命令 php -v 查看,对应的 php-fpm 服务名通常是 php[版本号]-fpm


使用 service 命令 (旧版系统)

如果你的服务器是 CentOS 6 或更早版本,或者一些旧版的 Ubuntu/Debian,你可能需要使用 service 命令,它的作用和 systemctl 类似。

重启 Nginx

sudo service nginx restart

重启 MySQL 或 MariaDB

对于 MySQL:

sudo service mysql restart

或者 (在旧版系统上更常见):

sudo service mysqld restart

对于 MariaDB:

sudo service mariadb restart

重启 PHP-FPM

sudo service php7.4-fpm restart  # 同样,替换为你的实际 PHP 版本

直接使用可执行文件 (不推荐)

这种方法直接调用组件的可执行文件,不经过系统服务管理器(如 systemdSysVinit),不推荐使用,因为它可能导致进程管理混乱,无法在开机时自动启动。

重启 Nginx

Nginx 的配置文件修改后,通常只需要重新加载配置即可,这比完全重启服务更快且不影响连接。

# 重新加载配置(推荐)
sudo nginx -s reload
# 如果必须完全重启
sudo /etc/init.d/nginx restart  # 在某些系统上

重启 MySQL

sudo /etc/init.d/mysql restart

重启 PHP-FPM

sudo /etc/init.d/php7.4-fpm restart

完整的一键重启脚本 (LNMP 全部重启)

如果你想一次性重启整个 LNMP 环境,可以创建一个简单的脚本,假设你的环境是 Nginx + MySQL + PHP 7.4。

#!/bin/bash
echo "正在重启 Nginx..."
sudo systemctl restart nginx
echo "正在重启 MySQL..."
sudo systemctl restart mysql
echo "正在重启 PHP-FPM..."
sudo systemctl restart php7.4-fpm
echo "LNMP 服务已全部重启完成!"

如何使用这个脚本:

  1. 将上面的代码保存为一个文件,restart_lnmp.sh
  2. 给文件添加可执行权限:
    chmod +x restart_lnmp.sh
  3. 执行脚本:
    ./restart_lnmp.sh

总结与建议

组件 推荐 (systemctl) 兼容 (service) 直接调用
Nginx sudo systemctl restart nginx sudo service nginx restart sudo nginx -s reload (首选)
MySQL sudo systemctl restart mysql sudo service mysql restart sudo /etc/init.d/mysql restart
MariaDB sudo systemctl restart mariadb sudo service mariadb restart sudo /etc/init.d/mariadb restart
PHP-FPM sudo systemctl restart phpX.Y-fpm sudo service phpX.Y-fpm restart sudo /etc/init.d/phpX.Y-fpm restart

最佳实践:

  1. 优先使用 systemctl,它是现代 Linux 系统的标准。
  2. 修改 Nginx 或 PHP 配置后,优先使用 nginx -s reload 进行平滑重载,而不是完全重启。
  3. 在执行任何重启操作前,确认你的命令和服务名称是正确的,特别是 PHP 的版本号。
分享:
扫描分享到社交APP
上一篇
下一篇