Redis SHUTDOWN命令

Redis SHUTDOWN命令教程

Redis 的 SHUTDOWN 命令用于关闭 Redis 服务器。当我们使用 SHUTDOWN 命令关闭服务器时,会做如下几件事情:

  • 停止所有客户端。
  • 如果有至少一个保存点在等待,执行 SAVE 命令。
  • 如果 AOF 选项被打开,更新 AOF 文件。
  • 关闭 redis 服务器(server)

因此如果持久化被打开的话, SHUTDOWN 命令会保证服务器正常关闭而不丢失任何数据。

另一方面,假如只是单纯地执行 SAVE 命令,然后再执行 QUIT 命令,则没有这一保证 —— 因为在执行 SAVE 之后、执行 QUIT 之前的这段时间中间,其他客户端可能正在和服务器进行通讯,这时如果执行 QUIT 就会造成数据丢失。

Redis SHUTDOWN命令详解

语法

192.168.98.70:6379> SHUTDOWN [NOSAVE] [SAVE]

参数

参数 描述
NOSAVE 不保存数据。
SAVE 保存数据。

说明

如果我们执行 SHUTDOWN SAVE 那么会强制让数据库执行保存操作,即使没有设定(configure)保存点。

如果执行 SHUTDOWN NOSAVE 会阻止数据库执行保存操作,即使已经设定有一个或多个保存点(你可以将这一用法看作是强制停止服务器的一个假想的 ABORT 命令)。

返回值

执行失败时返回错误。 执行成功时不返回任何信息,服务器和客户端的连接断开,客户端自动退出。

时间复杂度

O(N), N 为要保存到数据库中的 key 的数量。

可用版本

>= 1.0.0

案例

SHUTDOWN命令关闭服务器

使用 SHUTDOWN 命令关闭服务器

127.0.0.1:6379> PING PONG 127.0.0.1:6379> SHUTDOWN not connected>

我们首先使用了 PING 命令测试了服务器的连接性,返回了 PONG,即连接成功,接着,我们使用了 SHUTDOWN 命令关闭了服务器,此时终端变成了 not connected,即关闭成功。

Redis SHUTDOWN命令总结

Redis 的 SHUTDOWN 命令用于关闭 Redis 服务器。