Redis CLI Cheat Sheet
Direkt nutzbare redis-cli-Befehle fuer Alltag, Debugging und Betrieb. Jeder Block ist copy-paste-faehig. Passe Host, Port, Passwort, DB-Nummer, Key-Namen und Limits vor dem Einsatz an.
Verbindung und Auth
Lokal verbinden
Oeffnet eine lokale Redis-CLI gegen 127.0.0.1:6379.
redis-cli
Remote verbinden
Verbindet dich mit Host und Port.
redis-cli -h 127.0.0.1 -p 6379
Mit Passwort verbinden
Nutzt ein Passwort direkt beim Start. In Shared Shell-History lieber Umgebungsvariablen nutzen.
redis-cli -h 127.0.0.1 -p 6379 -a 'YOUR_PASSWORD'
TLS-Verbindung
Fuer Redis-Setups mit TLS.
redis-cli --tls -h redis.example.com -p 6380 -a 'YOUR_PASSWORD'
Verbindung testen
Erwartete Antwort: PONG.
redis-cli PING
Server-URL verwenden
Praktisch fuer Cloud-Redis oder Secrets aus Umgebungsvariablen.
redis-cli -u 'redis://:YOUR_PASSWORD@127.0.0.1:6379/0' PING
Datenbanken und Serverstatus
Datenbank waehlen
Wechselt in DB 1. Standard ist DB 0.
redis-cli SELECT 1
Serverinformationen anzeigen
Zeigt Server-, Memory-, Client-, Persistence- und Replication-Infos.
redis-cli INFO
Nur Memory-Infos anzeigen
Gut fuer Speicheranalyse.
redis-cli INFO memory
Key-Anzahl der aktuellen DB
Schneller Ueberblick ueber die aktuelle Datenbank.
redis-cli DBSIZE
Serverzeit anzeigen
Nutzt Redis-Serverzeit, nicht lokale Shell-Zeit.
redis-cli TIME
Keys finden und pruefen
Key existiert?
Gibt 1 zurueck, wenn der Key existiert.
redis-cli EXISTS user:123
Key-Typ anzeigen
Hilft vor GET, HGETALL, LRANGE, SMEMBERS usw.
redis-cli TYPE user:123
TTL pruefen
-1 bedeutet kein Ablauf, -2 bedeutet Key existiert nicht.
redis-cli TTL session:abc
Ablauf setzen
Setzt TTL in Sekunden.
redis-cli EXPIRE session:abc 3600
Ablauf entfernen
Macht einen Key wieder persistent.
redis-cli PERSIST session:abc
Key umbenennen
Ueberschreibt Ziel-Key, falls er existiert.
redis-cli RENAME old:key new:key
Key sicher scannen
Besser als KEYS * auf produktiven Systemen.
redis-cli --scan --pattern 'user:*'
Anzahl passender Keys zaehlen
Scan + Shell-Zaehler fuer Patterns.
redis-cli --scan --pattern 'session:*' | wc -l
Strings
String setzen
Setzt oder ueberschreibt einen Wert.
redis-cli SET app:mode production
String lesen
Liest den Wert eines String-Keys.
redis-cli GET app:mode
String mit TTL setzen
Setzt Wert und Ablauf in Sekunden.
redis-cli SET session:abc 'user-123' EX 3600
Nur setzen, wenn Key nicht existiert
Gut fuer einfache Locks.
redis-cli SET lock:job:42 'worker-1' NX EX 60
Zahl erhoehen
Atomic increment.
redis-cli INCR counter:views
Zahl um Wert erhoehen
Atomic increment by amount.
redis-cli INCRBY counter:views 10
Mehrere Strings setzen
Batch fuer kleine Setup-Daten.
redis-cli MSET config:env prod config:region eu config:version 1
Mehrere Strings lesen
redis-cli MGET config:env config:region config:version
Hashes
Feld setzen
Ideal fuer Objekt-aehnliche Daten.
redis-cli HSET user:123 name 'Ada' plan 'pro' loginCount 1
Einzelnes Feld lesen
redis-cli HGET user:123 name
Alle Felder lesen
redis-cli HGETALL user:123
Feld existiert?
redis-cli HEXISTS user:123 plan
Feld erhoehen
redis-cli HINCRBY user:123 loginCount 1
Feld loeschen
redis-cli HDEL user:123 plan
Listen
Wert vorne einfuegen
redis-cli LPUSH queue:emails 'job-1'
Wert hinten einfuegen
redis-cli RPUSH queue:emails 'job-2'
Bereich lesen
Liest die ersten 10 Eintraege.
redis-cli LRANGE queue:emails 0 9
Laenge pruefen
redis-cli LLEN queue:emails
Wert rechts entnehmen
Einfacher Queue-Pop.
redis-cli RPOP queue:emails
Blockierend entnehmen
Wartet bis zu 30 Sekunden.
redis-cli BLPOP queue:emails 30
Sets
Member hinzufuegen
redis-cli SADD tags:post:1 redis database cache
Alle Member anzeigen
redis-cli SMEMBERS tags:post:1
Mitgliedschaft pruefen
redis-cli SISMEMBER tags:post:1 redis
Member entfernen
redis-cli SREM tags:post:1 cache
Schnittmenge bilden
redis-cli SINTER tags:post:1 tags:post:2
Sorted Sets
Scored Member hinzufuegen
redis-cli ZADD leaderboard 100 user:123 80 user:456
Top-Werte absteigend lesen
redis-cli ZREVRANGE leaderboard 0 9 WITHSCORES
Rang eines Members anzeigen
redis-cli ZREVRANK leaderboard user:123
Score erhoehen
redis-cli ZINCRBY leaderboard 25 user:123
Nach Score-Bereich lesen
redis-cli ZRANGEBYSCORE leaderboard 50 150 WITHSCORES
Streams
Stream-Eintrag schreiben
redis-cli XADD events:user '*' userId 123 action login
Letzte Eintraege lesen
redis-cli XREVRANGE events:user + - COUNT 10
Consumer Group anlegen
MKSTREAM erstellt den Stream, falls er fehlt.
redis-cli XGROUP CREATE events:user workers '$' MKSTREAM
Aus Consumer Group lesen
redis-cli XREADGROUP GROUP workers worker-1 COUNT 10 BLOCK 5000 STREAMS events:user '>'
Nachricht bestaetigen
Ersetze die ID durch die gelesene Stream-ID.
redis-cli XACK events:user workers 1700000000000-0
Pending Messages anzeigen
redis-cli XPENDING events:user workers
Pub/Sub
Channel abonnieren
Blockiert die Shell und zeigt neue Nachrichten live.
redis-cli SUBSCRIBE notifications
Nachricht senden
In zweiter Shell ausfuehren.
redis-cli PUBLISH notifications 'deploy complete'
Pattern abonnieren
redis-cli PSUBSCRIBE 'events:*'
Loeschen und Aufraeumen
Einzelnen Key loeschen
redis-cli DEL cache:user:123
Key asynchron loeschen
Besser fuer grosse Werte, weil Redis im Hintergrund freigibt.
redis-cli UNLINK cache:large-object
Pattern per Scan loeschen
Produktionsfreundlicher als KEYS pattern | xargs DEL.
redis-cli --scan --pattern 'cache:*' | xargs -r redis-cli UNLINK
Aktuelle DB leeren
Gefaehrlich. Nur ausfuehren, wenn DB und Umgebung sicher sind.
redis-cli FLUSHDB
Alle DBs leeren
Sehr gefaehrlich. Loescht alles auf der Instanz.
redis-cli FLUSHALL
Debugging und Betrieb
Langsame Queries anzeigen
redis-cli SLOWLOG GET 20
Slowlog-Laenge anzeigen
redis-cli SLOWLOG LEN
Slowlog zuruecksetzen
redis-cli SLOWLOG RESET
Live-Kommandos beobachten
Sehr laut und teuer auf busy Systemen. Nur kurz verwenden.
redis-cli MONITOR
Clients anzeigen
redis-cli CLIENT LIST
Client-Verbindungen zaehlen
redis-cli INFO clients
Speicherverbrauch eines Keys
redis-cli MEMORY USAGE user:123
Grosse Keys suchen
Kann dauern, aber ist hilfreich fuer Speicherprobleme.
redis-cli --bigkeys
Key-Samples analysieren
redis-cli --memkeys
Persistence und Replikation
Hintergrund-Snapshot starten
redis-cli BGSAVE
Letzten Save-Zeitpunkt anzeigen
redis-cli LASTSAVE
Replikationsstatus anzeigen
redis-cli INFO replication
Rolle der Instanz anzeigen
redis-cli ROLE
Scripting und Automation
Einzelnes Kommando ohne interaktive Shell
redis-cli SET healthcheck:redis ok EX 60
Ausgabe roh ohne Quotes
Gut fuer Shell-Skripte.
redis-cli --raw GET app:mode
CSV-Ausgabe
Praktisch fuer Export/Analyse.
redis-cli --csv HGETALL user:123
Pipeline aus Datei ausfuehren
Eine Redis-Anweisung pro Zeile.
redis-cli --pipe < commands.redis
Beispiel fuer commands.redis
SET demo:1 hello
SET demo:2 world
MGET demo:1 demo:2
Lua-Script ausfuehren
Atomic Logik direkt in Redis.
redis-cli EVAL "return redis.call('GET', KEYS[1])" 1 app:mode
Sichere Produktionsregeln
- Nutze
SCAN statt KEYS * auf produktiven Instanzen.
- Nutze
UNLINK statt DEL, wenn grosse Keys geloescht werden.
- Nutze
MONITOR nur kurz, weil es auf busy Instanzen teuer ist.
- Fuehre
FLUSHDB und FLUSHALL nur aus, wenn Host, Port, DB und Umgebung eindeutig stimmen.
- Verwende Passwoerter nicht dauerhaft in Shell-History; Secrets besser ueber sichere Umgebungsvariablen oder Secret Manager laden.
- Pruefe vor Massenloeschungen immer zuerst die Trefferliste mit
redis-cli --scan --pattern 'pattern:*' | head.
Mini-Checklisten
Redis erreichbar?
redis-cli -h 127.0.0.1 -p 6379 PING
redis-cli INFO server
redis-cli DBSIZE
Speicherproblem schnell pruefen
redis-cli INFO memory
redis-cli --bigkeys
redis-cli SLOWLOG GET 10
Sessions debuggen
redis-cli --scan --pattern 'session:*' | head
redis-cli TTL session:abc
redis-cli GET session:abc
Queue debuggen
redis-cli LLEN queue:emails
redis-cli LRANGE queue:emails 0 9
redis-cli SLOWLOG GET 10
Sign in to join the discussion and vote on comments.
Sign in