Liste over alle Redis-databaser

1. Introduktion

I denne korte vejledning ser vi på forskellige måder at liste alle de tilgængelige databaser i Redis.

2. Notering af alle databaser

Til at begynde med, antallet af databaser i Redis er fast. Derfor kan vi udtrække disse oplysninger fra konfigurationsfilen med en simpel grep kommando:

$ kat redis.conf | grep databaser databaser 16

Men hvad hvis vi ikke har adgang til konfigurationsfilen? I dette tilfælde kan vi få de oplysninger, vi har brug for, ved at læse konfigurationen ved kørsel via redis-cli:

127.0.0.1:6379> CONFIG GET-databaser 1) "databaser" 2) "16"

Endelig, selvom det er mere egnet til applikationer på lavt niveau, kan vi bruge Redis Serialization Protocol (RESP) gennem en telnetforbindelse:

$ telnet 127.0.0.1 6379 Forsøger 127.0.0.1 ... Forbundet til 127.0.0.1. Escape-karakter er '^]'. * 3 $ 6 CONFIG $ 3 FÅ $ 9 databaser * 2 $ 9 databaser $ 2 16

3. Notering af alle databaser med poster

Nogle gange vil vi gerne have mere information om de databaser, der indeholder nøgler. For at gøre det, vi kan drage fordel af Redis INFO kommando, der bruges til at få information og statistik om serveren. Her ønsker vi specifikt at fokusere vores opmærksomhed på nøglerum sektion, der indeholder databaserelaterede data:

127.0.0.1:6379> INFO nøgleområde # Nøgleområde db0: nøgler = 2, udløber = 0, avg_ttl = 0 db1: nøgler = 4, udløber = 0, avg_ttl = 0 db2: nøgler = 9, udløber = 0, avg_ttl = 0 

Outputtet viser de databaser, der indeholder mindst en nøgle sammen med et par statistikker:

  • antal nøgler indeholdt
  • antal nøgler med udløb
  • nøglenes gennemsnitlige levetid

4. Konklusion

For at opsummere gik denne artikel gennem forskellige måder at liste databaser i Redis på. Som vi har set, er der forskellige løsninger, og hvilken vi vælger, afhænger virkelig af, hvad vi prøver at opnå.

EN grep er generelt den bedste mulighed, hvis vi har adgang til konfigurationsfilen. Ellers kan vi bruge redis-cli. RESP er normalt ikke et godt valg, medmindre vi bygger en applikation, der har brug for en lavprotokol. Endelig blev INFO kommando er nyttig, hvis vi kun vil hente databaser, der indeholder nøgler.


$config[zx-auto] not found$config[zx-overlay] not found