はじめに
Redisは、データ構造ストレージのオープンソースソリューションです。これは主にKey-Valueストアとして使用され、データベース、キャッシュストレージ、メッセージブローカーとして機能します。
このチュートリアルでは、これらのキー値(キー)を削除してRedisキャッシュをクリアするさまざまな方法について説明します。
前提条件
- 最新バージョンのRedis(Ubuntu、Mac、またはDockerでRedisを実行する方法についてのガイドを参照してください)
- コマンドライン/ターミナルウィンドウへのアクセス
redis-cliコマンドを使用してRedisキャッシュをクリアする
Redisキャッシュをクリアする最も簡単な方法は、 redis-cli
を使用することです。 コマンド。
Redisのデータベースは個別に保存されます。 redis-cli
を使用する コマンドを使用すると、すべてのデータベースから、または指定された単一のデータベースからのみキーをクリアできます。
redis-cliコマンド構文
redis-cli
コマンドは次の構文を使用します:
redis-cli [database number] [option]
場所:
-
[option]
–すべてのデータベースをクリアするか、選択した1つの特定のデータベースをクリアするかを選択できます。 -
[database number]
–クリアするデータベースを指定できます。
すべてのキーの削除
すべてのRedisデータベースからキーを削除するには、次のコマンドを使用します。
redis-cli flushall
バージョン4.0.0以降、Redisはサーバーをブロックすることなくバックグラウンドでキーをクリアできます。これを行うには、 flushall
を使用します async
を使用したコマンド パラメータ:
redis-cli flushall async
特定のデータベースからのキーの削除
次のコマンドを使用して、特定のデータベースのみをクリアします。
redis-cli flushdb
flushdb
を使用する パラメータを指定せずにコマンドを実行すると、現在選択されているデータベースがクリアされます。 -n
を使用します クリアする特定のデータベースを選択するためのデータベース番号を含むパラメーター:
redis-cli -n [database number] flushdb
async
を使用することもできます 個々のデータベースからキーをクリアするときのオプション:
redis-cli -n [database number] flushdb async
Ansibleを使用したキャッシュクリアの自動化
多数のRedisサーバーを実行している場合、各サーバーのキャッシュを手動でクリアするには時間がかかります。
このプロセスを高速化するには、Ansibleなどのツールを使用して、すべてのRedisサーバーのキャッシュを同時にクリアします。
ansible all -m command -a '/usr/bin/redis-cli flushall '
このコマンドを実行すると、 flushall
が適用されます Ansibleインベントリファイル内のすべてのサーバーへのコマンド:
all
–Ansibleインベントリファイル内のすべてのリモートホストを選択できます。-
-m
–実行するモジュールを選択できます。 -
-a
–モジュールの引数を提供します。この場合、コマンドモジュールはflushall
を実行しますredis-cli
を使用したコマンド 。