本文檔將一些 redis-cli
的平常使用較多的用法整理以下,以方便查閱。redis
完整版使用能夠參考 redis 官方文檔《 redis-cli, the Redis command line interface》shell
$ redis-cli -h <ip> -p <port> -a <passwd> -n <dbid> ping PONG
-h
redis 服務器 ip-p
redis 服務器 port-a
密碼-n
選擇要使用的 db加 -x
選項,將 /etc/services
中的內容做爲 foo 的 value。服務器
$ redis-cli -x set foo < /etc/services OK
將多個命令寫入到文本中,它們能夠一次接一個地被執行到。app
$ cat /tmp/commands.txt set foo 100 incr foo append foo xxx get foo $ cat /tmp/commands.txt | redis-cli OK (integer) 101 (integer) 6 "101xxx"
使用 pipeline 作一次性導入數據。lua
cat data.txt | redis-cli --pipe
使用 lua 腳本導入數據。code
$ cat /tmp/script.lua return redis.call('set',KEYS[1],ARGV[1]) $ redis-cli --eval /tmp/script.lua foo , bar OK
$ redis-cli -r 3 -i 1 INFO | grep rss_human used_memory_rss_human:1.38M used_memory_rss_human:1.38M used_memory_rss_human:1.38M
-r
相同命令執行次數 (count),值爲 -1 表示永遠執行下去-i
命令執行間隔多少秒 (delay),默認值爲 0--csv
選項,數據以 csv 格式導出。ip
$ redis-cli lpush mylist a b c d (integer) 4 $ redis-cli --csv lrange mylist 0 -1 "d","c","b","a"
--rdb
選項,將所鏈接的實例中的數據以 rdb 的格式導出。文檔
$ redis-cli --rdb /tmp/dump.rdb SYNC sent to master, writing 13256 bytes to '/tmp/dump.rdb' Transfer finished with success.
--stat
選項能夠作一些實時統計get
$ redis-cli --stat ------- data ------ --------------------- load -------------------- - child - keys mem clients blocked requests connections 506 1015.00K 1 0 24 (+0) 7 506 1015.00K 1 0 25 (+1) 7 506 3.40M 51 0 60461 (+60436) 57 506 3.40M 51 0 146425 (+85964) 107 507 3.40M 51 0 233844 (+87419) 157 507 3.40M 51 0 321715 (+87871) 207 508 3.40M 51 0 408642 (+86927) 257 508 3.40M 51 0 497038 (+88396) 257
--bigkeys
選項永遠掃描大 keyrequests
$ redis-cli --bigkeys
--scan
選項,能夠配合 --pattern
一塊兒用來批量掃描 key。
$ redis-cli --scan --pattern '*-11*' key-114 key-117 key-118 key-113 key-115 key-112 key-119 key-11 key-111 key-110 key-116
--latency
選項能夠用來統計耗時。
$ redis-cli --latency min: 0, max: 1, avg: 0.19 (427 samples)