1、进入redis客户端
/usr/local/redis/bin/redis-cli
127.0.0.1:6379>
2、set:设置字符串类型数据
|
1
2
3
4
5
6
|
127.0.0.1:6379>
set
name zhangsan
OK
127.0.0.1:6379>
set
name lisi
OK
127.0.0.1:6379> get name
"lisi"
|
从上面例子可知,如果key已经存在,再次用set设置值会覆盖原来的值
3、setnx:(set not exist)如果key已经存在,则返回0,如果key不存在才设置值
|
1
2
3
4
5
6
7
8
9
|
127.0.0.1:6379> setnx name wangwu
(integer) 0
127.0.0.1:6379> get name
"lisi"
127.0.0.1:6379> setnx job SE
(integer) 1
127.0.0.1:6379> get job
"SE"
127.0.0.1:6379>
|
4、setex(set ):设置key对应的值为string类型的value,并指定此键值对应的有效期
例如:我们添加一个haircolor=red的键值对,并指定有效期为10秒
|
1
2
3
4
5
6
|
127.0.0.1:6379> setex haircolor 10 red
OK
127.0.0.1:6379> get haircolor
"red"
127.0.0.1:6379> get haircolor
(nil)
|
5、setrange: 从指定下标位置开始替换字符,并返回字符长度。如果替换的字符串长度没有原字符串长度长,则会保留没有被替换的字符串
|
1
2
3
4
5
6
7
8
9
|
127.0.0.1:6379>
set
mail zeng@163.com
OK
127.0.0.1:6379> get mail
"zeng@163.com"
127.0.0.1:6379> setrange mail 5 qq.com
//5
代表下标位置,下标从0开始
(integer) 12
127.0.0.1:6379> get mail
"zeng@qq.comm"
127.0.0.1:6379>
|
6、mset:一次性设置多个key的值,成功返回ok,表示所有值都设置了,失败返回0,表示没有任何值被设置
|
1
2
3
4
5
6
7
8
|
127.0.0.1:6379> mset key1 aaa key2 bbb key3 ccc
OK
127.0.0.1:6379> get key1
"aaa"
127.0.0.1:6379> get key2
"bbb"
127.0.0.1:6379> get key3
"ccc"
|
7、msetnx:一次设置多个key的值,成功返回ok,表示所有的值都设置了,失败返回0表示没有任何值被设置,但是不会覆盖已经存在的key
|
1
2
3
4
5
6
7
8
|
127.0.0.1:6379> msetnx key3 cc key4 ddd key5 eee
(integer) 0
127.0.0.1:6379> get key3
"ccc"
127.0.0.1:6379> get key4
(nil)
127.0.0.1:6379> get key5
(nil)
|
由于key3已经存在,导致key4 key5都设置失败了
8、get:获取key对应string的值,如果值不存在则返回nil
9、getset:设置key的值,并返回key的旧值
|
1
2
3
4
|
127.0.0.1:6379> getset key1 aaaa
"aaa"
127.0.0.1:6379> get key1
"aaaa"
|
10、getrange KEY N M:获取指定下标位置的key的值
|
1
2
3
4
5
|
127.0.0.1:6379> getrange mail 0 4
"zeng@"
127.0.0.1:6379> getrange mail 0 3
"zeng"
127.0.0.1:6379>
|
11、mget:获取多个key的值
|
1
2
3
4
|
127.0.0.1:6379> mget key1 key2 key3
1)
"aaaa"
2)
"bbb"
3)
"ccc"
|
12、incr:对key的值做加加操作,并返回最新的值
|
1
2
3
4
5
6
7
8
|
127.0.0.1:6379>
set
key4 10
OK
127.0.0.1:6379> incr key4
(integer) 11
127.0.0.1:6379> incr key4
(integer) 12
127.0.0.1:6379> incr key4
(integer) 13
|
13、incrby:同incr类似,加指定值,key不存在的时候会设置key,并认为原来的value是0
|
1
2
3
4
5
6
7
8
9
10
|
127.0.0.1:6379> incrby key4 10
(integer) 23
127.0.0.1:6379> incrby key4 10
(integer) 33
127.0.0.1:6379> get key4
"33"
127.0.0.1:6379> incrby key4 -5
(integer) 28
127.0.0.1:6379> incrby key4 -5
(integer) 23
|
14、decr:对key的值做减减操作
|
1
2
3
4
|
127.0.0.1:6379> decr key4
(integer) 22
127.0.0.1:6379> decr key4
(integer) 21
|
15、decrby:与decrby相反
|
1
2
3
4
5
6
|
127.0.0.1:6379> decrby key4 2
(integer) 19
127.0.0.1:6379> decrby key4 2
(integer) 17
127.0.0.1:6379> decrby key4 2
(integer) 15
|
16、append:给指定key的字符串追加value,返回新字符串值 的长度
|
1
2
3
4
5
6
|
127.0.0.1:6379> get name
"zeng"
127.0.0.1:6379> append name .com
(integer) 8
127.0.0.1:6379> get name
"zeng.com"
|
17、strlen:查看key对应值得长度
|
1
2
|
127.0.0.1:6379> strlen name
(integer) 8
|