Redis 的 SHUTDOWN 命令用于关闭 Redis 服务器。当我们使用 SHUTDOWN 命令关闭服务器时,会做如下几件事情:
因此如果持久化被打开的话, SHUTDOWN 命令会保证服务器正常关闭而不丢失任何数据。
另一方面,假如只是单纯地执行 SAVE 命令,然后再执行 QUIT 命令,则没有这一保证 —— 因为在执行 SAVE 之后、执行 QUIT 之前的这段时间中间,其他客户端可能正在和服务器进行通讯,这时如果执行 QUIT 就会造成数据丢失。
192.168.98.70:6379> SHUTDOWN [NOSAVE] [SAVE]
参数
参数 描述 NOSAVE 不保存数据。 SAVE 保存数据。 说明
如果我们执行 SHUTDOWN SAVE 那么会强制让数据库执行保存操作,即使没有设定(configure)保存点。
如果执行 SHUTDOWN NOSAVE 会阻止数据库执行保存操作,即使已经设定有一个或多个保存点(你可以将这一用法看作是强制停止服务器的一个假想的 ABORT 命令)。
返回值
执行失败时返回错误。 执行成功时不返回任何信息,服务器和客户端的连接断开,客户端自动退出。
时间复杂度
O(N), N 为要保存到数据库中的 key 的数量。
可用版本