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のデータをクリアします