一、 工具查看

可以直接使用 redisClients 软件界面操作查看

二、 命令行

redis-cli -h 127.0.0.1 -p 6379

2.1 基础命令

  • keys * // 列举所有的key
  • expire <key> <seconds> // 设置某个key的过期时间(单位:秒)
  • ttl <key> // 显示key的过期时间(单位:秒)【返回-1表示永久 -2表示key不存在】
  • persist <key> // 将key的时间设置为永久
    • set getset 都会将key设置为永久
  • expireat <key> <1540000000> // 在某个时间点过期

pexpire pttl pexpireat 跟上面一样,只是单位是毫秒

2.2 五种数据类型操作命令:

1 string

用法:

  • set a 100 // 设置a的值
  • get a // 获取a的值,不存在则返回nil
  • del a // 删除a
  • getset a // 设置并且获取之前的a值
  • incr a // a增加1
  • incrby a 2 // a增加2
  • exists a // a是否存在,1为存在,0为不存在
  • decr a // a减1
  • decrby a 2 // a减少2
  • append a "bbb" // 在a后面拼接字符串,a变成了100bbb
  • strlen a // 获取a的长度
  • mget a b... // 同时获取多个值
  • mset a 100 b 200 // 同时设置多个值
  • setnx a // 如果a不存在则设置,存在则失败,返回值1成功,返回0则失败

2 hash

  • hset key field value // 设置key的某field为某个value
  • hget key field // 获取key的某个field的值
  • hmset key field value [ field value ...... ] // 同时设置多个
  • hmget key field [ field ...... ] // 同时获取多个
  • hgetall key // 获取所有字段和值
  • hexists key field // 判断某个key的某field是否存在
  • hdel key field [ field .....] // 删除key的某些field
  • hkeys key // 获取所有字段的名字
  • hvals key // 获得键中所有字段的值
  • hlen key // 获得字段数量

3 list

  • lpush key value [ value ....... ]
    • 1 向列表左边增加元素
    • 2 返回表示增加元素后列表的长度
  • rpush key value [ value ....... ]
    • 1 向列表右边增加元素
    • 2 返回表示增加元素后列表的长度
  • lpop key
    • 1 将列表左边的元素从列表中移除
    • 2 返回被移除元素值
  • rpop key
    • 1 将列表右边的元素从列表中移除
    • 2 返回被移除元素值
  • llen key // 获取列表中元素个数
  • lrange key start stop // 获得列表片段 lrange 与很多语言中用来截取数组片段的方法有一点区别是 lrange 返回的值包含最右边的元素 lrange 命令也支持负索引,表是从右边开始计算序数,如 -1 表示最右边第一个元素, -2 表示最右边第二个元素,以此类推
  • lrem key count value
    • 1 删除列表中指定的值 lrem 命令会删除列表中前 count 个值为 value 的元素
    • 2 返回值是实际删除的元素个数。
  • lindex key index // 获得 或 设置 指定索引的元素值
  • lset key index value // 是通过索引操作列表的命令,它会将索引为 index 的元素赋值为 value
  • ltrim key start end // 只保留列表指定片段
  • linsert key before | after pivot value
    • 1 linsert 命令首先会在列表中从左到右查找值为 pivot 的元素,然后根据第二个参数是 before 还是 after 来决定将 value 插入到该元素的前面还是后面,如果命令执行成功
    • 2 返回插入操作完成之后列表的长度。如果没有找到 pivot 返回 -1 如果key 不存在或为空,返回 0

4 set

  • sadd key member [ member .... ] // 增加删除命令
  • srem key member [ member .... ] // 命令用来从集合中删除一个或多个元素,并返回删除成功的个数
  • smembers key // 获得集合中的所有元素
  • sismember key member // 判断一个元素是否在集合中是一个时间复杂度为 0(1) 的操作,无论集合中有多少个元素, sismember 命令始终可以极快的返回结果。当值存在时 sismember 命令返回 1 ,当值不存在或者键不存在时返回 0
  • sdiff key [ key ...... ] // 命令用来对多个集合执行差集运算
  • sinter key [ key ..... ] // 该命令用来对多个集合执行交集运算。集合 A 与集合 B 的交集表示为 A∩B
  • sunion key [ key ...... ] // 该命令用来对多个集合执行并集运算
  • `scard key // 获得集合中元素的个数
  • sdiffstore destination key [ key …… ] // 进行集合运算并将结果存储
  • sinterstore destination key [ key …… ]
  • sunionstore destination key [ key …… ]
  • srandmember key [ count ] // 随机获得集合中的元素
  • spop key // 从集合中弹出一个元素

5 zset有序集合

  • zadd key score member [ score member ...... ] // 向有序集合中加入一个元素和该元素的分数,如果该元素已经存在,则会用新的分数替换原有的分数
  • zscore key member // 获得元素的分数
  • zrange key start stop [ withscores ] // 获得排名在某个范围的元素列表
  • zrevrange key start stop [ withscores ]
  • zcard key // 获得集合中元素的数量
  • zcount key min max // 获得指定分数范围内的元素个数
  • zrem key member [ member .... ] // 删除一个或多个元素