#Redis的五大数据类型 redis的数据都是以key/value
存储,因此说,五大类型指的是value
的数据类型 ##String 字符串,做为redis的最基本数据类型java
redis中的string类型是二进制安全,即它能够保存任何数据,好比一张图片序列化为一段二进制字符串redis
redis的string类型大小上限是512M ##List 简单有序字符串列表,安装插入的顺序排序。安全
在redis中,咱们能够选择性是从list的同步仍是尾部插入元素。在获取list里面的元素的时候, 也能够选择性是从头部仍是尾部弹出元素dom
##Hash 相似于java中Map,键值对集合。很适合存储java中的对象大数据
##Set 无序的字符串列表,set中的元素不容许重复值code
##ZSet 和set同样是字符串的集合,不一样的是zset中每一个元素会关联一个double类型的分数,zset中元素是惟一的, 可是每一个元素关联的分数容许重复对象
#Redis的key相关命令排序
##set 表示插入一条记录图片
>set key value ok
##del 删除一个存在的key字符串
127.0.0.1:6379> del name (integer) 1
1表示数据删除成功,影响的条目
##dump 能够序列化指定的key,并返回系列后的值
##exists 判断一个指定的key是否存在
127.0.0.1:6379> exists name (integer) 1 127.0.0.1:6379> exists age (integer) 0
1表示存在一个,0表示不存在
##expire 能够给key设置有效期,有效期以后,key会销毁 单位以秒计
127.0.0.1:6379> expire name 10 (integer) 1
##ttl 查看一个key的剩余有效期
127.0.0.1:6379> ttl name (integer) 42 127.0.0.1:6379>
返回值就是剩余秒数,若是是-1,说明给key没有过时时间,若是是-2,说明这个key已经不存在了
##persist 移出给定key的有效期
127.0.0.1:6379> ttl name (integer) 93 127.0.0.1:6379> persist name (integer) 1 127.0.0.1:6379> ttl name (integer) -1
##pexpire 设置过时时间,毫秒单位
##pttl 获取过时时间,单位是毫秒
##keys 获取知足条件的全部key
127.0.0.1:6379> keys na* 1) "name2" 2) "name"
注意,返回的不是key的值,而是key的名字
##type 获取给定的key存储的数据类型
127.0.0.1:6379> type name string
##rename 修改key的名称
127.0.0.1:6379> rename name username OK 127.0.0.1:6379> get name (nil) 127.0.0.1:6379> get username "jack" 127.0.0.1:6379>
##randomkey 随机返回一个key
127.0.0.1:6379> randomkey "test15035"
返回的是key的名称
##flushall
清除某个db中的全部key