我运行这个命令来访问我的redis服务器。

telnet 127.0.0.1 6379

显示所有数据库的命令是什么?


没有命令可以执行它(就像使用MySQL那样)。Redis数据库的数量是固定的,在配置文件中设置。默认情况下,您有16个数据库。每个数据库由一个数字(而不是名称)标识。

可以通过以下命令了解数据库的数量:

CONFIG GET databases
1) "databases"
2) "16"

您可以使用以下命令列出定义了某些键的数据库:

INFO keyspace
# Keyspace
db0:keys=10,expires=0
db1:keys=1,expires=0
db3:keys=1,expires=0

请注意,您应该使用“redis-cli”客户端来运行这些命令,而不是telnet。如果您想使用telnet,那么您需要运行这些使用Redis协议格式化的命令。

例如:

*2
$4
INFO
$8
keyspace

$79
# Keyspace
db0:keys=10,expires=0
db1:keys=1,expires=0
db3:keys=1,expires=0

你可以在这里找到Redis协议的描述: http://redis.io/topics/protocol


或者你可以只运行以下命令,你将看到Redis实例的所有数据库,而不启动Redis -cli:

$ redis-cli INFO | grep ^db
db0:keys=1500,expires=2
db1:keys=200000,expires=1
db2:keys=350003,expires=1

你可以使用redis-cli INFO keyspace

localhost:8000> INFO keyspace
# Keyspace
db0:keys=7,expires=0,avg_ttl=0
db1:keys=1,expires=0,avg_ttl=0
db2:keys=1,expires=0,avg_ttl=0
db11:keys=1,expires=0,avg_ttl=0

也许最令人难忘,也绝对是最完整的方法,在结尾方便地显示#Keyspaces部分:

$ redis-cli info

如果你设置了密码(例如使用一个名为REDIS_PASS的env变量),将它传递给-a (auth)参数:

$ redis-cli -a $REDIS_PASS info