Список усіх баз даних Redis


194

Я запустив цю команду для доступу до свого сервера redis.

telnet 127.0.0.1 6379

Тепер я хочу показати всі свої бази даних.

Скажіть, будь ласка, цю команду.

Дякую.


Що ви маєте на увазі? Показати кількість доступних баз даних? Інформація про використані бази даних? ...?
— Sybille Peters

Відповіді:


356

Немає команди зробити це (як ви це зробили б, наприклад, з 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


1
Не працюю тут:INFO keyspace ERR wrong number of arguments for 'info' command
— Метт

4
Використовуєте версію до 2.4? Занадто стара ... спробуйте надсилати INFO без параметра.
— Didier Spezia

redis_version: 2.4.14 також не має клавіш INFO.
— хакре

80

Або ви можете просто запустити таку команду, і ви побачите всі бази даних екземпляра Redis без запуску redis-cli :

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

80
Але того ж можна було досягти і зredis-cli INFO keyspace
— Романом Ньюазою,

9
Відхилення, тому що це неміцно, швидше за все, в майбутньому випуску може зламатися, і тому, що існує така вбудована команда (як було сказано) для досягнення того ж результату.
— Madbreaks

@RomanNewaza ваша відповідь насправді повинна бути прийнятою відповіддю.
— fbtb

9

ви можете використовувати 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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.