redis入门实战一、五种数据结构的基本操作(二)


连库命令:
【默认连6379 0 号库】:redis-cli
【指定连6380端口的redis服务】:redis-cli -p 6380
【指定连6380端口 8号库的redis服务】: redis-cli -p 6380 -n 8

登录之后
输入 help @generic (@之后会自动补全)常用的:
del ,exists,expire,keys ,move,object,persist,pexpire,type
eg:
查库里有哪些key: keys *
清空库里所有key(谨慎操作):flushdb / flushall

一、String

1)、set

给字符串赋值:set k1 hello
取值:get k1

查询set命令用法help set
在这里插入图片描述
根据用法可以知道下图

nx 作用:只能新建
k1没有值的时候才能赋值成功,如果k1已经有值,则不能对k1进行赋值。【适用场景:分布式锁,许多人,谁能赋值成功,则谁抢占了锁】
在这里插入图片描述
xx的作用:只能更新
k1有值的时候,才能更新成功
在这里插入图片描述

2)、getset

发送一次get再发送一次set,使用该命令,相当于只发一个包,减少io请求:getset k1 mm
在这里插入图片描述

3)、msetnx 给多个元素赋值,原子操作

127.0.0.1:6379> flushall
OK
127.0.0.1:6379> keys *
(empty list or set)

给k1, k2赋值

127.0.0.1:6379> msetnx k1 a k2 b
(integer) 1
127.0.0.1:6379> mget k1 k2
1) "a"
2) "b"

更新k2的值,给k3赋值 ,nx只能给没有值的元素赋值成功,下面操作失败,msetnx是原子操作,所以k3赋值失败

127.0.0.1:6379> msetnx k2 c k3 d
(integer) 0
127.0.0.1:6379> mget k1 k2 k3
1) "a"
2) "b"
3) (nil)

4)、字符串 追加 & 取部分数

猜你喜欢

转载自blog.csdn.net/qq_17033579/article/details/129588249