首页 文章

列出所有Redis数据库

提问于
浏览
148

我运行此命令来访问我的redis服务器 .

telnet 127.0.0.1 6379

现在,我想显示我的所有数据库 .

请告诉我这个命令 .

谢谢 .

2 回答

  • 259

    没有命令可以执行此操作(例如,您可以使用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

  • 61

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

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

相关问题