Alle Redis-Datenbanken auflisten

1. Einleitung

In diesem kurzen Tutorial sehen wir uns verschiedene Möglichkeiten an, um alle in Redis verfügbaren Datenbanken aufzulisten.

2. Alle Datenbanken auflisten

Erstens ist die Anzahl der Datenbanken in Redis festgelegt . Daher können wir diese Informationen mit einem einfachen Befehl grep aus der Konfigurationsdatei extrahieren :

$ cat redis.conf | grep databases databases 16

Aber was ist, wenn wir keinen Zugriff auf die Konfigurationsdatei haben? In diesem Fall können wir die benötigten Informationen erhalten, indem wir die Konfiguration zur Laufzeit über das redis-cli lesen :

127.0.0.1:6379> CONFIG GET databases 1) "databases" 2) "16"

Obwohl es für Anwendungen auf niedriger Ebene besser geeignet ist, können wir das Redis Serialization Protocol (RESP) über eine Telnet-Verbindung verwenden:

$ telnet 127.0.0.1 6379 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. *3 $6 CONFIG $3 GET $9 databases *2 $9 databases $2 16

3. Auflisten aller Datenbanken mit Einträgen

Manchmal möchten wir mehr Informationen über die Datenbanken erhalten, die Schlüssel enthalten. Zu diesem Zweck können wir den Befehl Redis INFO verwenden, mit dem Informationen und Statistiken zum Server abgerufen werden . Hier möchten wir unsere Aufmerksamkeit speziell auf den Schlüsselbereich richten , der datenbankbezogene Daten enthält:

127.0.0.1:6379> INFO keyspace # Keyspace db0:keys=2,expires=0,avg_ttl=0 db1:keys=4,expires=0,avg_ttl=0 db2:keys=9,expires=0,avg_ttl=0 

In der Ausgabe werden die Datenbanken aufgelistet, die mindestens einen Schlüssel enthalten, sowie einige Statistiken:

  • Anzahl der enthaltenen Schlüssel
  • Anzahl der Schlüssel mit Ablauf
  • durchschnittliche Lebensdauer der Schlüssel

4. Fazit

Zusammenfassend ging dieser Artikel durch verschiedene Arten der Auflistung von Datenbanken in Redis. Wie wir gesehen haben, gibt es verschiedene Lösungen, und welche wir wählen, hängt wirklich davon ab, was wir erreichen wollen.

Ein grep ist im Allgemeinen die beste Option, wenn wir Zugriff auf die Konfigurationsdatei haben. Ansonsten können wir das Redis-Cli verwenden . RESP ist normalerweise keine gute Wahl, es sei denn, wir erstellen eine Anwendung, die ein Low-Level-Protokoll benötigt. Schließlich ist der Befehl INFO nützlich, wenn nur Datenbanken abgerufen werden sollen, die Schlüssel enthalten.