web-dev-qa-db-ja.com

すべてのRedisデータベースを一覧表示する

私は自分のredisサーバーにアクセスするためにこのコマンドを実行しました。

telnet 127.0.0.1 6379

今、私は私のすべてのデータベースを表示したいです。

この命令を教えてください。

ありがとう。

161
Kevin Meredith

これを実行するためのコマンドはありません(たとえば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

Telnetではなく、 "redis-cli"クライアントを使ってこれらのコマンドを実行することになっていることに注意してください。 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

289
Didier Spezia

あるいは、次のコマンドを実行するだけで、起動redis-cliなしでRedisインスタンスのすべてのデータベースが表示されます。

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