Redis(Remote Dictionary Server ),即远程字典服务.非关系型数据库.C语言开发,基于内存操作的数据库,存储格式为key:value,Redis的key都是字符串.
1.Redis的value常用的五种数据类型
String(字符串) 普通字符串
Hash(哈希) map,小key,value
List(列表) 列表,有序,可重复,左右都可以存数据
Set(集合)无序集合,不可重复
zset(有序集合)有序集合,以分数排序
2.string常用指令
set key value 设置指定key的值,如果key已经存在,则就是修改值
get key 获取指定key的值
setex key seconds value 设置指定key的值,并将 key 的过期时间设为 seconds 秒
ttl key 查看key剩余存活时间
setnx key value 如果 key不存在,则设置成功,返回1 如果key存在,就什么都不 做,返回0
incr key 自增1
incrby key 数值 要为key增加指定数值
decr key 自减1
decrby key 数值要为key增加指定数值
3.hash常用指令
HSET key field value 将哈希表 key 中的字段 field 的值设为 value
HGET key field 获取存储在哈希表中指定字段的值
HDEL key field 删除存储在哈希表中的指定字段
HKEYS key 获取哈希表中所有字段
HVALS key 获取哈希表中所有值
HEXISTS key field 查看哈希表 key 中,指定的字段是否存在。
HGETALL key 获取所有键值对
HMSET key field1 value1[field2 value2]同时将多个 field-value (域-值)对设置到哈希表 key中.
HMGET key field1 [field2] 获取所有给定字段的值
4.list常用指令
LPUSH key value1 [value2] 从列表的左边压入元素
RPUSH key value1 [value2] 从列表的右边压入元素
LLEN key 获取列表元素个数
LRANGE key start stop 获取指定下标范围内的元素,下标从0开始获取所有值0 -1
RPOP key 弹出最后一个元素弹出【获取到元素后,并删除元素】
LINDEX key index 获取指定下标的元素
BRPOP key1 [key2] timeout 弹出最后一个元素,从右边开始弹出元素,如果前面的列 表弹完了,则依次从后面的的列表弹出元素。 如果列表没 有元素会阻塞列表直到等待超时或发现可弹出元素为止
BRPOPLPUSH 原列表 目标列表 timeout把原列表最后一个元素弹出,压 入到目标列表