FLUSHALL [ASYNC]

清空整个 Redis 中的数据(清空所有数据库的所有 key,不仅仅是当前 select 的数据库 )。

此命令不会失败。时间复杂度是 O(N), N 代表所有数据库中 key 的总数。

*FLUSHALL ASYNC (Redis 4.0.0 or greater)

支持在后台单独的线程执行删除 key 的操作而不阻塞 Redis。

FLUSHALLFLUSHDB 增加了ASYNC 来使整个数据集或单个数据库异步释放。

异步FLUSHALLFLUSHDB 命令仅仅删除它们被调用时已经存在的 key。命令调用之后,删除 key 的过程中新建的 key 不受影响。

*返回值

字符串 OK

*例子

# 0 号数据库的 key 数量
redis> DBSIZE            
(integer) 19

# 切换到 1 号数据库
redis> SELECT 1          
OK

# 1 号数据库的 key 数量
redis[1]> DBSIZE         
(integer) 16

# 清空所有数据库的所有 key
redis[1]> flushall       
OK

# 不但 1 号数据库被清空了
redis[1]> DBSIZE         
(integer) 0

# 0 号数据库(以及其他所有数据库)也一样
redis[1]> SELECT 0       
OK

redis> DBSIZE
(integer) 0