sql >> データベース >  >> NoSQL >> Redis

Redisでパターンに一致するキーを削除する方法

    Redisは、キーを一括削​​除する方法を提供していません。ただし、redis-cliと少しのコマンドラインマジックを使用して、redisをブロックせずにキーを一括削​​除できます。


    このコマンドは、ユーザーに一致するすべてのキーを削除します:*
    redis-cli --scan --pattern users:* | xargs redis-cli del

    redis 4.0以降を使用している場合は、代わりにunlinkコマンドを使用してバックグラウンドでキーを削除できます。


    redis-cli --scan --pattern users:* | xargs redis-cli unlink

    スクリプトはどのように機能しますか?

    1. まず、redis-cli --scan --pattern <pattern>を使用します キーのリストを取得するには、1行に1つのキーを使用します。これはスキャンを使用するため、redisサーバーはブロックされません。
    2. xargs 複数の行を取り、それらを同じ行に結合するため、基本的にコマンドdel <key1> <key2>... を実行します。
    3. パターンに一致するキーが数千ある場合、xargsは自動的にredis-cliを複数回実行します。
    関連項目
    • ハッシュ内のフィールドの名前を変更する
    • 有効期限を複数のキーに設定
    • スキャンを使用して複数のキーの名前を変更する
    • Redis用のRDBToolsGUIを使用すると、一括アクションをプレビューでき、Redisのデータを管理するための強力なGUIが提供されます。無料でダウンロードできます!

    1. シンプルな.NET分散キャッシングソリューションの提案

    2. Redisに地理空間データを保存するためのアプローチ

    3. Meteorの実行中に、別のクライアントからMeteorのMongoDBにアクセスするにはどうすればよいですか?

    4. MongoDBで配列のn番目の要素を取得します