概述
本節(jié)列舉下redis安裝之后可執(zhí)行文件命令,以及redis-cli連接之后help命令的使用以及常用命令的總結(jié)
1. 可執(zhí)行文件命令
redis安裝后,在src和/usr/local/bin下有幾個(gè)以redis開(kāi)頭的可執(zhí)行文件,稱為redis shell,這些shell可以執(zhí)行很多命令
-
redis-server: 啟動(dòng)redis -
redis-cli: redis命令行工具 -
redis-benchmark: 基準(zhǔn)測(cè)試工具 -
redis-check-aof: AOF持久化文件檢測(cè)工具和修復(fù)工具 -
redis-check-dump: RDB持久化文件檢測(cè)工具和修復(fù)工具 -
redis-sentinel: 啟動(dòng)redis-sentinel
每一個(gè)shell都有一個(gè)help命令,命令非常詳細(xì),下面還有Examples,例如:redis-server --help
zzzliu@ubuntu:~$ redis-server --help
Usage: ./redis-server [/path/to/redis.conf] [options]
./redis-server - (read config from stdin)
./redis-server -v or --version
./redis-server -h or --help
./redis-server --test-memory <megabytes>
Examples:
./redis-server (run the server with default conf)
./redis-server /etc/redis/6379.conf
./redis-server --port 7777
./redis-server --port 7777 --replicaof 127.0.0.1 8888
./redis-server /etc/myredis.conf --loglevel verbose
Sentinel mode:
./redis-server /etc/sentinel.conf --sentinel
2. 可執(zhí)行文件常用命令
-
redis-cli -h ip地址 -p 端口號(hào) -a 密碼: redis連接命令 -
redis-cli --stat: 實(shí)時(shí)監(jiān)視Redis實(shí)例,在這種模式下,每秒鐘都會(huì)打印一條新行,其中包含有用的信息以及與舊數(shù)據(jù)點(diǎn)之間的差異,可以查看到內(nèi)存使用情況,連接的客戶端等情況。使用-i <interval>可修改更新頻率,默認(rèn)值為一秒鐘
zzzliu@ubuntu:~$ redis-cli --stat
------- data ------ --------------------- load -------------------- - child -
keys mem clients blocked requests connections
5 562.84K 1 0 82 (+0) 10
5 562.84K 1 0 83 (+1) 10
5 562.84K 1 0 84 (+1) 10
5 562.84K 1 0 85 (+1) 10
5 562.84K 1 0 86 (+1) 10
-
redis-cli --bigkeys: 查看bigkey;該程序使用[SCAN]命令,該命令會(huì)掃描數(shù)據(jù)庫(kù),對(duì)實(shí)例性能產(chǎn)生影響,可以加上時(shí)間間隔./redis-cli --bigkeys -i 0.1,每掃描100次暫停0.1秒
zzzliu@ubuntu:~$ redis-cli --bigkeys
# Scanning the entire keyspace to find biggest keys as well as
# average sizes per key type. You can use -i 0.1 to sleep 0.1 sec
# per 100 SCAN commands (not usually needed).
[00.00%] Biggest hash found so far 'user' with 2 fields
[00.00%] Biggest string found so far 'key1' with 3 bytes
[00.00%] Biggest list found so far 'list1' with 2 items
-------- summary -------
Sampled 5 keys in the keyspace!
Total key length in bytes is 27 (avg len 5.40)
Biggest list found 'list1' has 2 items
Biggest hash found 'user' has 2 fields
Biggest string found 'key1' has 3 bytes
1 lists with 2 items (20.00% of keys, avg size 2.00)
1 hashs with 2 fields (20.00% of keys, avg size 2.00)
3 strings with 5 bytes (60.00% of keys, avg size 1.67)
0 streams with 0 entries (00.00% of keys, avg size 0.00)
0 sets with 0 members (00.00% of keys, avg size 0.00)
0 zsets with 0 members (00.00% of keys, avg size 0.00)
-
redis-cli --scan: 查看所有的key,該命令使用SCAN進(jìn)行掃描,不會(huì)像KEYS *那樣阻塞Redis
//掃描符合給定模式的key,--pattern
zzzliu@ubuntu:~$ redis-cli --scan --pattern '*.stock'
a.stock
b.stock
//配合wc統(tǒng)計(jì)特定種類的key個(gè)數(shù)
zzzliu@ubuntu:~$ redis-cli --scan --pattern '*.stock' | wc -l
2
3. help使用
redis相關(guān)命令非常多,很難記住每一個(gè)命令,因此help命令就非常重要。help命令有三種用法,下面分別列舉:
-
help <tab>: help后面參數(shù)提示補(bǔ)全;輸入help + 空格以后按<tab>鍵可以自動(dòng)提示補(bǔ)全,也可以先輸入前幾個(gè)字母按照前綴補(bǔ)全; -
help <command>: 查看具體命令的用法; 輸入help + 空格 + 命令查看具體用法;具體命令可以查看命令的用法描述,命令從那個(gè)版本開(kāi)始,命令屬于哪個(gè)組等信息
127.0.0.1:6379> help KEYS
KEYS pattern
summary: Find all keys matching the given pattern
since: 1.0.0
group: generic
-
help @<group>: 查看命令組的幫助;Redis命令是分組的,例如:Lists/Strings/Cluster等等,可以通過(guò)@ + 組名,查看一組命令;
命令組
127.0.0.1:6379> help @string
APPEND key value
summary: Append a value to a key
since: 2.0.0
BITCOUNT key [start end]
summary: Count set bits in a string
since: 2.6.0
...
4. 常用命令
-
KEYS:查看有哪些key -
EXISTS:判斷指定的key是否存在,返回1代表存在,0代表不存在 -
DEL:刪除指定的key及其對(duì)應(yīng)的value` -
EXPIRE/PEXPIRE:為一個(gè)key設(shè)置有效期,單位為秒或毫秒 -
TTL/PTTL:返回一個(gè)key剩余的有效時(shí)間,單位為秒或毫秒 -
RENAME/RENAMENX:將key重命名為newkey。使用RENAME時(shí),如果newkey已經(jīng)存在,其值會(huì)被覆蓋;使用RENAMENX時(shí),如果newkey已經(jīng)存在,則不會(huì)進(jìn)行任何操作` -
TYPE:返回指定key的類型,string, list, set, zset, hash -
CONFIG GET:獲得Redis某配置項(xiàng)的當(dāng)前值,可以使用*通配符 -
CONFIG SET:為Redis某個(gè)配置項(xiàng)設(shè)置新值` -
CONFIG REWRITE:讓Redis重新加載redis.conf中的配置 -
INFO:查看redis所有信息 -
SLOWLOG:慢日志查詢(后續(xù)章節(jié)詳細(xì)分析) -
OBJECT:查看RedisObject的幾個(gè)屬性 -
TYPE:查看數(shù)據(jù)基本類型 -
MONITOR:監(jiān)控,類似tail命令查看日志的效果
127.0.0.1:6379> MONITOR
OK
1606372382.244300 [0 127.0.0.1:49412] "COMMAND"
1606372422.887772 [0 127.0.0.1:49412] "HSET" "hash1" "name" "zzzliu"
-------over-------
