Wyświetl wszystkie bazy danych Redis

194

Uruchomiłem to polecenie, aby uzyskać dostęp do mojego serwera Redis.

telnet 127.0.0.1 6379

Teraz chcę pokazać wszystkie moje bazy danych.

Powiedz mi to polecenie.

Dzięki.

Kevin Meredith
źródło
Co masz na myśli? Pokaż liczbę dostępnych baz danych? Informacje o używanych bazach danych? ...
Sybille Peters

Odpowiedzi:

356

Nie ma do tego polecenia (tak jak na przykład w przypadku MySQL). Liczba baz danych Redis jest stała i ustawiona w pliku konfiguracyjnym. Domyślnie masz 16 baz danych. Każda baza danych jest oznaczona numerem (nie nazwą).

Aby poznać liczbę baz danych, możesz użyć następującego polecenia:

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

Można użyć następującego polecenia, aby wyświetlić listę baz danych, dla których zdefiniowano niektóre klucze:

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

Pamiętaj, że do uruchamiania tych poleceń należy używać klienta „redis-cli”, a nie telnet. Jeśli chcesz korzystać z usługi Telnet, musisz uruchomić te polecenia sformatowane przy użyciu protokołu Redis.

Na przykład:

*2
$4
INFO
$8
keyspace

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

Opis protokołu Redis można znaleźć tutaj: http://redis.io/topics/protocol

Didier Spezia
źródło
1
Nie działa tutaj:INFO keyspace ERR wrong number of arguments for 'info' command
Matt
4
Czy korzystasz z wersji wcześniejszej niż 2.4? Za stary ... spróbuj wysłać INFO bez parametru.
Didier Spezia
redis_version: 2.4.14 nie ma również przestrzeni klawiszy INFO.
hakre
80

Lub możesz po prostu uruchomić następujące polecenie i zobaczysz wszystkie bazy danych instancji Redis bez uruchamiania redis-cli :

$ redis-cli INFO | grep ^db
db0:keys=1500,expires=2
db1:keys=200000,expires=1
db2:keys=350003,expires=1
raphaelstolt
źródło
80
Ale to samo można osiągnąć zredis-cli INFO keyspace
Romanem Newazą
9
Głosowanie w dół, ponieważ jest to niestabilne, może zepsuć się w przyszłych wydaniach oraz ponieważ istnieje wbudowane polecenie (jak wspomniano), aby osiągnąć ten sam wynik.
Madbreaks
@RomanNewaza twoja odpowiedź powinna być faktycznie zaakceptowaną odpowiedzią.
fbtb,
9

możesz użyć 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
macno
źródło