redis共通管理コマンド

2478 ワード

  • 名前変更キー
  • 127.0.0.1:6379> get test
    "test1"
    127.0.0.1:6379> RENAME test newtest
    OK
    127.0.0.1:6379> get test
    (nil)
    127.0.0.1:6379> get newtest
    "test1"
    

    元のキーが既に存在する場合は、すでに存在する値が上書きされます.
    127.0.0.1:6379> get test3
    "3"
    127.0.0.1:6379> rename newtest test3
    OK
    127.0.0.1:6379> get test3
    "test1"
    127.0.0.1:6379> get newtest
    (nil)
    

    renamenx元のkeyが存在しない場合のみ名前の変更に成功します
    127.0.0.1:6379> set test4 112121kk
    OK
    127.0.0.1:6379> RENAMENX test3 test4
    (integer) 0
    127.0.0.1:6379> dbsize
    (integer) 13
    127.0.0.1:6379> randomkey
    "test_inter"
    127.0.0.1:6379> expire test4 600
    (integer) 1
    127.0.0.1:6379> ttl test4
    (integer) 592
    127.0.0.1:6379> expire test4 -2
    (integer) 1
    127.0.0.1:6379> ttl test4
    (integer) -2
    127.0.0.1:6379> PERSIST test4
    (integer) 0
    127.0.0.1:6379> ttl test4
    (integer) -2
    

    移行:move key db redis内部の複数のデータベース間の移行に使用
    dumpとrestore dump key(正則可能)restore key ttl valueは、異なるインスタンス間でdumpを移行するとキー値がシーケンス化され、rdb形式のrestore逆シーケンス化を使用してredisにインポートされ、ttl=0で期限切れがないことを示します.
    dump test 3オペレーティングシステムでは、次のファイルが表示されます.
    -rw-r--r--  1 root root      91 Apr 22 09:40 dump.rdb
    
    
    127.0.0.1:6379> dump test3
    "\x00\x05test1\a\x00\xdf\xfaM5\xb8q?["
    
    127.0.0.1:6379> RESTORE test4 0 "\x00\x05test1\a\x00\xdf\xfaM5\xb8q?["
    OK
    127.0.0.1:6379> 
    127.0.0.1:6379> get test4
    "test1"
    

    migrate移行migrateはインスタンス間の移行に用いられ、実際にはdump restore delを組み合わせ、プロセス全体が原子的であり、直接ソースとターゲットredis上で行い、クライアントを開く必要がなく、移行restoreが完了した後、okメッセージが発生し、del操作MIGRATE host port key|destination-db timeout[COPY][REPLACE][KEYS key]を判断する
    遍歴:keys正則、例えばkeys*keys test*
    keys*を使用するとブロックが発生する可能性があります
    scanは非ブロックの漸進的な遍歴方式を提供し、欠点はデータが正確ではない可能性があることである.
    127.0.0.1:6379> SCAN 0
    1) "11"
    2)  1) "testm2"
        2) "count"
        3) "test4"
        4) "counter:__rand_int__"
        5) "test2"
        6) "key:__rand_int__"
        7) "test3"
        8) "test1"
        9) "myset:__rand_int__"
       10) "testm"
    127.0.0.1:6379> 
    127.0.0.1:6379> SCAN 11
    1) "0"
    2) 1) "test_inter"
       2) "user"
       3) "mylist"
    127.0.0.1:6379> 
    

    db select dbindex dbシーケンス番号の切り替え
    select 2のように
    dbデータFLUSHDBをクリア現在のdbのデータのみをクリア
    FLUSHALLはすべてのdbのデータをクリアします