菜鸟科技网

memcached 重启命令具体怎么操作?

使用 systemd (现代 Linux 发行版,如 Ubuntu 16.04+, CentOS 7+, Debian 8+)

这是目前最主流的方式,大多数现代 Linux 系统都使用 systemd 作为其初始化系统和服务管理器。

memcached 重启命令具体怎么操作?-图1
(图片来源网络,侵删)

重启 Memcached 服务

sudo systemctl restart memcached

常用相关命令

  • 停止服务:

    sudo systemctl stop memcached
  • 启动服务:

    sudo systemctl start memcached
  • 重载配置并重启 (推荐): 这个命令会先停止服务,然后重新加载最新的配置文件,再启动服务,这比单纯的 restart 更能确保配置被正确应用。

    sudo systemctl restart memcached

    注意: systemdrestart 命令本身就包含了“停止-启动”的过程,效果等同于重载配置,但在一些其他服务管理器中,restart 不会重新读取配置文件,对于 systemdrestartreload 是两个独立的概念。reload 用于不中断服务的情况下重新加载配置(如果服务支持)。

    memcached 重启命令具体怎么操作?-图2
    (图片来源网络,侵删)
    # 尝试在不中断服务的情况下重新加载配置(memcached 版本支持)
    sudo systemctl reload memcached

    对于 Memcached 修改配置后最稳妥的方式还是 restart

  • 查看服务状态:

    sudo systemctl status memcached

    这个命令会显示服务是否正在运行,以及最近的日志信息。

  • 设置开机自启:

    memcached 重启命令具体怎么操作?-图3
    (图片来源网络,侵删)
    sudo systemctl enable memcached
  • 禁止开机自启:

    sudo systemctl disable memcached

使用 SysVinit (较旧的 Linux 发行版,如 CentOS 6, Debian 7)

一些较老的系统仍在使用 SysVinitservice 命令来管理服务。

重启 Memcached 服务

sudo service memcached restart

常用相关命令

  • 停止服务:
    sudo service memcached stop
  • 启动服务:
    sudo service memcached start
  • 查看服务状态:
    sudo service memcached status
  • 设置开机自启:
    sudo chkconfig memcached on
  • 禁止开机自启:
    sudo chkconfig memcached off

手动编译安装,且未使用服务管理器

如果您是手动下载源码编译安装的 Memcached,并且没有将其配置为系统服务,那么您需要手动找到并管理它的进程。

找到 Memcached 的进程 ID (PID)

# 使用 pgrep 命令(推荐)
pgrep -f memcached
# 或者使用 ps 命令
ps aux | grep memcached

您会看到类似 1234 (PID) 的输出。

使用 PID 文件重启 (如果配置了)

如果您的 Memcached 启动时指定了 -P 参数来记录 PID 文件,那么重启会更方便,配置文件中可能有: pidfile /var/run/memcached/memcached.pid

重启步骤如下:

  1. 停止进程:
    # 使用 kill 命令和 PID 文件中的 ID
    sudo kill $(cat /var/run/memcached/memcached.pid)
  2. 重新启动: 找到您当初启动 Memcached 的命令(memcached -d -m 512 -u root -l 127.0.0.1 -p 11211),然后重新执行它。

直接杀死进程并重启(不推荐,但简单粗暴)

  1. 强制杀死进程:
    sudo pkill -9 -f memcached

    pkill -9 会强制终止进程,可能导致数据丢失(如果缓存中还有未持久化的数据)。

  2. 重新启动: 再次执行您当初的启动命令。

如何判断我的系统使用哪种方式?

您可以在终端中执行以下命令来判断:

# 检查 systemd 是否存在且是主要的 init 系统
ls -l /sbin/init
# 如果输出类似 /usr/lib/systemd/systemd 或 /sbin/init -> /usr/lib/systemd/systemd,则使用 systemd
# 或者检查是否存在 systemctl 命令
which systemctl
# 如果有输出,则使用 systemd

如果以上命令没有结果或指向了 upstartinit,那么您的系统很可能在使用 SysVinitservice 命令。

场景 重启命令 备注
现代 Linux (systemd) sudo systemctl restart memcached 最推荐,通用且强大。
旧版 Linux (SysVinit) sudo service memcached restart 在老系统中使用。
手动安装 (无服务) sudo pkill -f memcached 手动启动命令 最后的选择,风险较高。

对于绝大多数用户来说,您只需要使用第一种情况下的命令即可。

分享:
扫描分享到社交APP
上一篇
下一篇