Redis 的简单操作命令和事务简单使用

使用

启动redis   切换到bin目录下 ./redis-cli 直接启动

让redis后台运行 需要修改配置文件 redis.conf 中的 daemonize  为yes 再次启动就行

redis 命令  
获取所有key    keys *

通配符 * 所有   一个   []通配中括号内的某个字符
返回随机key名   randomkey
判断可以值是什么类型  type key名
判断key是否存在  exists key名
删除指定key  del key名
修改key名 rename  原来key名   新key名   如果key名存在就会覆盖
如果key名存在就不改了  不存在则改   renamenx  

redis默认开启了16个库  可在 redis.conf 配置文件中修改 databases   

移动到别的库   move   key名   库编号
切换到别的库  select 库编号
查询key值有效期     ttl  key名   返回秒数   -1 表示永久有效
设置有效期   expire key名  整型值(设置的秒数)
设置有效期以毫秒为单位   p expire key名  整型值(设置的豪秒数)
设置永久有效  persist key名


REDIS 字符串类型操作

设置key  val   存储字符串    set key名  val值   ex有效期秒  px毫秒 nx  xx     注意 秒和毫秒只能使用一个  不能同时使用   如果同时设置 会以后面的为准   nx  key不存在时执行   xx key存在时执行
同时设置多个key val   mset key1 val1 key2 val2
同时获取多个key值  mget key1 key2
修改val值   setrange  key名  偏移量  修改后的值    如果偏移量大于字符串长度 用0填充
把val值附加到key名后  append key名  附加的值
获取部分val值     getrange  key名  开始下标  结束下标  从左以 0 开始  从右从-1开始   注意 开始下标>长度  返回空    结束下标>= 长                                        度    截取到字符结尾

返回当前val值并修改为新值   getset  key名  新值
增加1 incr key名  减去1 decr key名 
增加多   incrby  key名  增加的数量  
减去   decrby  key名  减去的数量
以浮点数增加  incrbyflot  key名 增加的数量


REDIS list  链表 类型操作

左边添加 新的链表  lpush   key名  val值  
右边添加 新的链表  rpush   key名  val值 
取出链表的某一段  lrange key名  起始位置  结束位置
返回并删除链表最左 lpop key名
返回并删除最右 rpop key名
删除指定值  lrem key名  要删除的数量  要删除的val值
截取指定值     lrange key名 开始位置 结束位置
查看链表长度 llen key名
在指定位置插入 linsert key名  before|after 指定的值   要插入的值
删除指定的并且插入另外的链表中  rpoplpush  链表名1  链表名2  弹出链表1 的最右一个值 放入链表2最左
 


REDIS set  集合 类型操作

唯一性  无序性
增加一个集合  sadd key名 val1 val2   返回值 增加成功的数量   
查看集合中元素  smembers key名  
删除集合中某个指定元素  srem key名  要删除的值  返回值 具体成功的个数
随机返回并且删除一个元素  spop key名
随机返回集合中某个元素  srandmember key名
判断集合中是否存在某个元素  sismember key名 val值
返回集合中元素的个数  scard key
把集合1中的某个元素删除并添加到集合2中  smove 集合1 集合2 val值
求出几个集合中的交集 并返回 sinter key1 key2 key3 
求出几个集合中的并集 sunion key1 key2 key3 
求出key1与别的集合的差集 sdiff key1 key2 key3 

order set 有序集合\

增加一个有序集合 zadd key名 score1 val1 score2 val2 ```
查询范围内的值 按照排序  zrange  key名  范围 0 4    加withscores 取出对应的score
查询范围内的值 按照 score  zrangebyscore  key名  范围 sort1 sort2   可以加 limit 跳过的位数  取几位   加withscores 取出对应的 score
查询集合某个值的排名 升序  zrank key名 val
查询集合某个值的排名 降序  zrevrank key名 val
删除集合内指定值 zrem key名 val
删除范围内的值 按照排序  zremrangebyrank  key名  范围 0 4    
删除范围内的值 按照 score zremrangeby score   key名  范围  score1 score2
统计
返回元素个数 zcard key
返回区间内的数量 zcount key 0 1 
返回两个集合见的最大值 最小值 和 放到新的集合中  zzinterstore 新的集合 比较的集合数量  集合1 集合2 aggregate min|max|sum
 

 
REDIS Hash  哈希数据类型操作

生成一个hash一次设置一个值  hset keys field val
生成一个hash一次设置多个值  hmset keys field1 val1 field2 val2 
查询所有 hgetall key
查询指定 hget key  field  
查询多个指定 hmget key  field1 field2
 
删除key中field域  hdel key fiedl
返回key中元素数量 hlen key
判断key中是否有field域 hexists key field
把key中的field域增长整形值 hinrby key field val 
把key中的field域增长浮点型值 hinrby float key field val 
返回key中所有field hkeys key   
返回key中所有value kvals key   


REDIS 事务

watch key1 key2  监控  如果任意一个有变化则事务取消
unwatch  取消监视
启动事务 muitl
把执行命令放在队列里 并不去执行  exec后才去执行
失败了 discard
成功 exec

 


共同学习!共同进步!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值