如何删除Redis流?

Mik*_*iss 6 redis

我创建了一个Redis流:

XADD mystream * foo bar
Run Code Online (Sandbox Code Playgroud)

我已经将其与一个消费者群体相关联:

XGROUP CREATE mystream mygroup $
Run Code Online (Sandbox Code Playgroud)

现在,我想删除它,以便Redis就像流从未存在过一样。如何删除?

我试过使用XTRIM:

XTRIM mystream MAXLEN 0
Run Code Online (Sandbox Code Playgroud)

这成功将流的长度设置为零。但是它没有完全删除流,因为XREADGROUP在没有该组的情况下调用此方法时,尝试仍然成功并且不返回典型错误:

XREADGROUP GROUP mygroup myconsumer COUNT 1 STREAMS mystream >
Run Code Online (Sandbox Code Playgroud)

实际输出:

(nil)
Run Code Online (Sandbox Code Playgroud)

预期产量:

NOGROUP No such key 'mystream' or consumer group 'mygroup' in XREADGROUP with GROUP option
Run Code Online (Sandbox Code Playgroud)

Mil*_*iez 6

非常简单的答案,从第一次在线搜索开始

只需执行:

DEL stream_name 
Run Code Online (Sandbox Code Playgroud)

XTRIM 仅删除流中的数据,但不会删除流本身或与其关联的任何组。


Mik*_*iss 5

只需使用DEL命令:

DEL mystream
Run Code Online (Sandbox Code Playgroud)