redis的基本使用
数据类型
redis支持多种数据类型,常用的是这5种
String常用指令
- 设置/修改值(key存在则做添加,不存在则做修改)
- set key value
- 设置/修改值(有过期时间)
- setex key time value
- 例:setex key3 10 123,表示10秒后过期,key3的value由123变成nil
- 设置值(若key不存在则做添加,存在则不做操作)
- setnx key value
- 利用这一特性实现分布式锁
- 取值
- get key
- 批量添加
- mset k1 v1 [k2 v2 k3 v3 ...]
- 批量取值
- mget k1 [k2 k3 ...]
- 在key对应的上实现value自增/自减(其value一般是数字)
- incr key
- decr key
- 在key对应的value上实现加x/减x
- incrby key x
- decrby key x
- 在指定的key对应的value拼接字符串
- append key value
- 例:若key1对应的value的值是“aaa”,则在append key1 bbb操作后,key1对应的value值是aaabbb
- strlen key
- 获取key对应的value值的长度
Hash常用指令
- 往key对应的hash中添加键值对
- hset key field value
- 往key对应的hash中添加键值对,如果field在hash中已经存在,则添加失败
- hsetnx key field value
- 从对应的key中获取对应的field的值
- hget key field
- 往对应的key中批量添加/获取键值对
- hmset key f1 v1 [f2 v2 ...]
- hmget key f1 v1 [f2 v2 ...]
- key对应的field的value值加value
- hincrby key field value
- 获取key对应的hash中所有的键值对
- hgetall key
- 获取key对应的hash中所有的field
- hkeys key
- 获取key对应的hash中所有的value
- hvals key
- 检查key对应的hash中是否有指定的field
- hexists key field
- 获取key对应的hash中的键值对个数
- hlen key