FLUSHALL
语法
FLUSHALL [ASYNC | SYNC]
- 可用版本
- Redis 开源版 1.0.0
- 时间复杂度
- O(N),其中 N 是所有数据库中键的总数
- ACL 分类
-
@keyspace
,@write
,@slow
,@dangerous
,
删除所有现有数据库中的所有键,而不仅仅是当前选中的数据库。此命令永不失败。
默认情况下,FLUSHALL
会同步清空所有数据库。从 Redis 6.2 开始,将 **lazyfree-lazy-user-flush** 配置指令设置为 "yes" 会将默认清空模式更改为异步。
可以使用以下修饰符之一明确指定清空模式
ASYNC
: 异步清空数据库SYNC
: 同步清空数据库
注意事项
- 异步的
FLUSHALL
命令仅删除在命令调用时存在的键。在异步清空过程中创建的键将不受影响。 - 此命令不删除函数。
- 除了清空所有数据库(类似于
FLUSHDB
)之外,此命令还会清除 RDB 持久化文件,中止任何正在进行的快照,并且如果启用了save
配置,则会保存一个空的 RDB 文件。
行为变更历史
>= 6.2.0
: 默认清空行为现在可通过 **lazyfree-lazy-user-flush** 配置指令进行配置。
RESP2/RESP3 Reply
简单字符串回复:OK
。历史
- 从 Redis 版本 4.0.0 开始:添加了
ASYNC
清空模式修饰符。 - 从 Redis 版本 6.2.0 开始:添加了
SYNC
清空模式修饰符。