我想删除所有密钥。我要把一切都删掉,给我一个空白的数据库。

有没有办法在Redis客户端中做到这一点?


当前回答

您的问题似乎是关于删除数据库中的所有密钥。在这种情况下,您应该尝试:

连接到redis。您可以使用命令redis-cli(如果在端口6379上运行),否则还必须指定端口号。选择数据库(命令Select{Index})执行命令flushdb

如果您想刷新所有数据库中的密钥,那么应该尝试刷新。

其他回答

使用以下命令启动Redis服务器后:service Redis server start--port 8000或Redis server。

使用redis cli-p 8000在不同的终端中作为客户端连接到服务器。

您可以使用

FLUSHDB-删除当前选定DB的所有键。此命令从未失败。此操作的时间复杂度为O(N),N是数据库中的密钥数。FLUSHOLL-删除所有现有数据库的所有键,而不仅仅是当前选定的键。此命令从未失败。此操作的时间复杂度为O(N),N是所有现有数据库中的密钥数。

检查ASYNC选项的文档。

如果您通过其python接口使用Redis,请使用以下两个函数实现相同的功能:

def flushall(self):
    "Delete all keys in all databases on the current host"
    return self.execute_command('FLUSHALL')

and

def flushdb(self):
    "Delete all keys in the current database"
    return self.execute_command('FLUSHDB')

停止Redis实例。删除RDB文件。启动Redis实例。

如果可以使用RDM(Redis桌面管理器),效果会更好。您可以通过在RDM中创建新连接来连接到redis服务器。

连接后,您可以检查实时数据,也可以使用任何redis命令进行游戏。

在RDM中打开cli。

1) 右键单击连接,您将看到一个控制台选项,只需单击它,RDM底部将打开一个新的控制台窗口。

回到您的问题FLUSHOLL是命令,您只需在redis-cli中键入FLUSHALL即可。

此外,如果您想了解任何redis命令及其正确用法,请访问下面的链接。https://redis.io/commands.

如果您正在使用redis-rb-gem,那么您可以简单地调用:

your_redis_client.flushdb

redis-cli-h<主机>-p<端口>flushall

它将从连接的客户端(带有主机和端口)中删除所有数据