Redis slett nøkler med prefiks eller jokertegn

Redis slett nøkler med prefiks eller jokertegn
Redis er en nøkkelverdi-pardatabase. I motsetning til relasjonsdatabaser, har den imidlertid ikke et spørringsspråk for å administrere dataene.

I stedet gir det oss et CLI-verktøy med innebygde kommandoer som vi kan bruke til å administrere databasene.

Denne opplæringen vil turnere hvordan du sletter nøkler i en Redis -database.

Krav

Denne artikkelen forutsetter at du har følgende krav oppfylt:

  1. Den siste versjonen av Redis -serveren er installert på systemet ditt.
  2. Tillatelser til å kjøre kommandoer på Redis -serveren.

Hvis du har ovennevnte krav, kan vi fortsette.

Redis Sett inn tastene

Før vi får hvordan du sletter nøkler på en Redis -database, la oss sette inn noen eksempler på data. Åpne først terminalen og koble til Redis -serveren din.

$ sudo service redis-server start
$ redis-cli
127.0.0.1: 6379>

Når du er koblet til, kan du sette inn nøkkelverdipar i databasen ved hjelp av SET-kommandoen.

Merk: Redis har databaser fra indeks 0 til indeks 15. Som standard vil Redis bruke database 0.

Kjør kommandoen nedenfor:

127.0.0.1: 6379> Sett e -post "[email protected]"
Ok

Kommandoen over vil sette inn en nøkkel som heter e -post og verdien “[email protected]"

Av hensyn til denne opplæringen har vi levert eksempeldata som inneholder en liste over IP -adresser.

Last ned filen i lenken nedenfor:

https: // www.Dropbox.com/s/bqjzswagr673w0v/redis_mock_data.tekst.CSV?dl = 0

Når den er lastet ned, kjør kommandoen nedenfor for å sette inn dataene i Redis -databasen

CAT REDIS_MOCK_DATA.txt | Redis-Cli-Rør

Kommandoen over bør sette inn alle dataene i Redis -databasen din.

Hvis serveren din er sikret, bruk kommandoen som vist:

CAT REDIS_MOCK_DATA.txt | redis -cli -et passord -rør

Erstatt passordet med passordet for serveren din.

Redis får verdier

For å hente verdier som er lagret i en Redis -database, bruk Get -kommandoen etterfulgt av nøkkelen du ønsker å få tilgang til.

Et eksempel fra prøvedataene er som vist:

127.0.0.1: 6379> Få 1000
"3DB5: 1312: F51C: 599C: A9CF: 21CE: C135: def4"

Kommandoen over skal returnere IP -adressen som er lagret på nøkkelen 1000.

Redis slett -tasten

For å slette en nøkkel i Redis, bruk Del -kommandoen etterfulgt av nøkkelen for å fjerne. Et eksempel er som vist:

127.0.0.1: 6379> Del 243
(Heltall) 1

Kommandoen vil returnere antall tastene fjernet. For å lære mer om hvordan du sletter tastene, sjekk denne artikkelen:

Redis slett nøkler

Redis fjerner matchende mønster

Som standard gir Redis ikke en måte å fjerne nøkler som samsvarer med et spesifikt mønster. Imidlertid kan vi utnytte kommandolinjens kraft for å utføre denne handlingen.

Vi vil bruke Xargs til å bygge og kjøre kommandoer tilbake til Redis for denne. Et eksempel er som vist nedenfor:

Redis-CLI--Scan--Pattern 10* | XArgs Redis -Cli -Del

I dette tilfellet bruker vi eksempeldatasettene som er gitt i de forrige seksjonene.

Vi skanner først etter alle nøklene som samsvarer med 10*. Dette skal returnere utdataene som:

108
100
---
1000
107

Deretter konstruerer vi en enkeltlinjekommando ved hjelp av Xargs og gir alle nøklene til Redis del-kommandoen.

Dette skulle komme tilbake:

Redis-CLI--Scan--Pattern 10* | Xargs Redis-Cli Del
(Heltall) 12

Her matcher Redis 12 nøkler og fjerner dem.

Tips: Hvis du bruker Redis Server versjon 4.0 og over kan du erstatte Del -kommandoen med unlink.

Lukking

I denne artikkelen utforsket vi hvordan vi skal jobbe med Redis Keys. Vi diskuterte hvordan du setter inn nøkler i Redis, hvordan du utfører masseinnsetting, henter nøkler, sletter enkelt- eller flere taster, og til slutt, hvordan du fjerner nøkler som samsvarer med et spesifikt mønster.

Takk for at du leser og hold deg nerdy!!