1. Einführung
Bei der Arbeit stoßen wir häufig auf Situationen, in denen wir die Schlüssel bestimmter Regeln stapelweise löschen müssen, beispielsweise die zwischengespeicherten Kursdaten „Kurs-Kurs-UID“. Solche Daten müssen so etwas wie „course -*“ gelöscht werden. Obwohl Redis Befehle für die Batch-Abfrage von Schlüsseln dieses Typs bereitstellt, stellt es keine Befehle für die Batch-Löschung bestimmter Schlüsseltypen bereit.
Jetzt habe ich die Lösungen geklärt und hoffe, dass es allen helfen kann.
2. Lösung
Lass uns zuerst sehen, wie wir es lösen.
1. Geben Sie zuerst den Redis-Client ein
cd redis所在目录/src ./redis-cli
2. Über den Tastenbefehl können Sie sehen, dass es jetzt drei Schlüssel gibt
127.0.0.1:6379> set course-1 1 OK 127.0.0.1:6379> set course-2 2 OK 127.0.0.1:6379> set course-3 3 OK
5.1, lokales Batch-Löschen von Schlüsseln
127.0.0.1:6379> keys course-* 1) "course-3" 2) "course-2" 3) "course-1"
Die 3 zugehörigen Schlüssel natürlich-* wurden gerade gelöscht
Prinzipielle Analyse:
Führen Sie zuerst den Befehl „keys“ über den Redis-Client aus und suchen Sie alle Schlüssel mithilfe des Befehls „xargs“. , der zuvor abgefragte Schlüssel wird als Eingabe für den nachfolgenden Befehl redis del verwendet
Das endgültige Ausführungsergebnis kann verstanden werden als
(Lernvideofreigabe:
Redis-Video-Tutorial)
1 Fuzzy-Abfrage127.0.0.1:6379> exit
Abfrage Aus des oben genannten Kurses 1 Kurs 2 Kurs 3 Diese drei Schlüssel
del stammen aus der vorherigen Schlüsselabfrage
./redis-cli keys "course-*" | xargs ./redis-cli del
5.2. Remote-Batch-Löschung von Schlüsseln
keys "course-*"2. xargs-Befehlxargs-Befehl ist ein Filter zum Übergeben von Parametern an andere Befehle und ein Tool zum Kombinieren mehrerer Befehle. Detaillierte Kursunterlagen: http://man.linuxde.net/xargsVerwandte Empfehlungen:
Redis-Datenbank-Tutorial
Das obige ist der detaillierte Inhalt vonRedis löscht Schlüssel bestimmter Regeln stapelweise. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!