redis 如何查看某个库的key_redis简介及常用命令详解

时间:2024-10-29 20:16:28

redis是什么?

redis全称(Remote Dictionary Server 远程字典服务),是一个免费开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API的非关系型数据库。

redis常用的5种数据类型?

String、List、Hash、Set、Zset

redis中数据库默认是多少个db?

redis下,数据库是由一个整数索引标识(从0开始到databases-1),而不是由一个数据库名称。默认情况下,一个redis有16个库(0-15),具体多少个由配置文件指定。

默认情况下,一个客户端连接到数据库0,如下图:

redis常用命令:

/(redis命令参考大全)

Key(键):

  • keys * --列出当前库的所有key
  • exists key --判断某个key是否存在
  • move key db --移除当前库并复制到指定库
  • expire key -- 给指定的key设置过期时间(秒钟)
  • ttl key --查看还有多少秒过期(-1表示永不过期-2表示已过期)
  • type key --查看key是什么数据类型

练习:

String(字符串):

  • set/get/del/append/strlen --添加/查询/删除/拼接/长度
  • incr/decr/incrby/decrby --自增/自减/按指定值增加/按指定值减少,一定要是数字才能加减
  • getrange/setrange --获取指定区间范围内的值/设置指定区间范围内的值,超过字符串长度的自动用x00补齐
  • setex(set key expire value)/setnx(set if not exist) --设置key对应的值value,并设置有效期(秒)/如果不存在,则set,存在则不做任何动作
  • mset/mget/msetnx --同时设置/获取一个或多个值,msetnx 设置的key都不存在时才成功,反之则失败
  • getset key value --将给定 key 的值设为 value ,并返回 key 的旧值(old value)

练习:

图一

图二

List(列表)

  • lpush/rpush key value -- 把值插入到列表头部/尾部
  • lrange --返回列表 key 中指定区间内的元素(0 表示列表的第一个元素,-1 最后一个元素, -2 倒数第二个元素)
  • lpop/rpop key --返回并删除列表头部/尾部元素
  • lindex key index --获取index索引上的值(从上到下)
  • llen --链表长度
  • lrem key count value:--删除count个value值,count>0从表头删除,count<0从表尾删除 ,count=0全部删除
  • ltrim key --开始index 结束index --截取指定范围内的值后重新再赋值给key
  • rpoplpush 源列表 目标列表 -- 把源列表的末尾拿出,放到目标列表头部,并返回元素值
  • lset key index value --将列表key下标为index的元素的值设置为value.
  • linsert key before|after pivot value --将值value插入到列表key当中,位于值 pivot 之前或之后。

练习:

图一

图二

Set(集合)

  • sadd key value1 value2 --往集合里面添加元素
  • smembers key --获取集合所有的元素
  • sismember key value --判断集合是否有某个值
  • scard key --返回集合元素的个数
  • srem key value --删除集合某个元素
  • srandmember key --随机取一个元素
  • spop key --返回并删除集合中1个随机元素
  • smove key1 key2 value --将key1中的某个值赋值给key2
  • sdiff/sinter/sunion --差集/交集/并集

练习:

图一

Hash(哈希)

key-value模式不变,但value是一个键值对

  • hset/hget/hmset/hmget/hgetall/hdel --一个或多个设置/获取/删除值
  • hlen --返回hash的field数量
  • hexists myhash field --验证field是否存在
  • hkeys/hvals -- 返回hash所有的field/value
  • hincrby/hincrbyfloat --给hash中的filed加上指定的值/指定的浮点数
  • hsetnx hash field value --不存在的情况下设置hash的field为value,存在不做任何操作

练习:

图一

图二

Zset(有序集合)

在set基础上,加一个score值

  • zadd --添加元素/获取指定区间内的元素(score可选)
  • zrangebyscore/zrevrangebyscore key min max [withscores] [limit offset count] --返回有序集key中,所有score值(升序/降序排列)介于min和max之间的成员, limit参数指定返回结果的数量及区间,如mysql的limit
  • zrem key member[member...] --移除有序集key中的一个或多个成员,不存在的成员将被忽略。
  • zcard/zcount/zscore --返回集合元素的个数/返回score区间内元素数量/返回有序集key中,成员member的score值。
  • zrevrank/zrank --查询member的排名降序/升序
  • zrevrange/zrange key start stop [withscore] --获取指定区间内的元素(按score降序/升序排列)[score可选]

练习:

图一

图二

以上就是5种常见数据类型的常见使用命令。