Redis - 如何列出数据库中的所有密钥?

时间:2013-10-14 07:23:48

标签: javascript node.js redis

我开始玩Redis,将一些值放入数据库。

var redis = require("redis"),
    client = redis.createClient();

// if you'd like to select database 3, instead of 0 (default), call
// client.select(3, function() { /* ... */ });

client.on("error", function (err) {
    console.log("Error " + err);
});

client.set("string key", "string val", redis.print);
client.hset("hash key", "hashtest 1", "some value", redis.print);
client.hset(["hash key", "hashtest 2", "some other value"], redis.print);
client.hkeys("hash key", function (err, replies) {
    console.log(replies.length + " replies:");
    replies.forEach(function (reply, i) {
        console.log("    " + i + ": " + reply);
    });
    client.quit();
});

如何列出数据库中的所有密钥?

或是否有免费的GUI(Redsmin https://redsmin.com/仅在测试时免费)

2 个答案:

答案 0 :(得分:3)

使用带模式 *

方法

根据docs

redis> MSET one 1 two 2 three 3 four 4
OK
redis> KEYS **
1) "one"
2) "two"
3) "three"
3) "four"

答案 1 :(得分:1)

这有效,但正如文档中所述

警告:将KEYS视为一个只能在生产环境中非常小心地使用的命令。在针对大型数据库执行时可能会破坏性能。此命令用于调试和特殊操作,例如更改键空间布局。 不要在常规应用程序代码中使用KEYS。如果您正在寻找在密钥空间子集中查找密钥的方法,请考虑使用SCAN或设置。

因此,在您处理本地项目之前,KEY命令很好,但请避免在生产中使用它。

如果您想要 Redis GUI ,可以查看Redis Desktop。我使用它并且非常有用。