redis数据类型:String、Hash、List、Set(无序不重复)以及zset(sorted Set(有序集合))。
- 在String中可以使用set/get来进行赋值和取值,String类型的值最大可以存储512MB(一个键值)。
- hash是一个键值对集合,是一个String类型的filed和value映射表,一般用于存储对象。通过HMSET/HGET进行赋取值
- list是简单字符串列表,按照插入顺序排序。通过lpush依次插入,通过lrange取出
- Set是String类型的无序集合,通过hash表实现的,故增删查的复杂度都是O(1),且通过命令sadd添加成功后返回1,若已经存在集合中返回0,key对应的SET不存在返回错误。使用smembers xx查询信息
- zset与set一样,如添加学生分数zadd key score member(添加元素到集合,元素在集合中存在则更新对应score)
redis命令
- redis - cli 打开终端使用命令连接本地redis服务
- ping 检测redis服务是否启动(PONG启动)
- redis -cli -h host -p port -a password 在远程服务器上连接(host为主机ip,port为端口号,password为连接密码)
- redis-cli --raw 在连接时避免中文乱码
redis keys命令
- DEL key 删除命令用于key存在时删除,删除成功时返回(integer)1,失败时返回(integer)0
- DUMP key 实现序列化,key存在返回序列化的值,key不存在返回nil(序列化就是把对象转换为字节序列的过程称为对象的序列化;把字节序列恢复为对象的过程称为对象的反序列化)序列化可以参考:https://blog.youkuaiyun.com/abc6368765/article/details/51365838
- EXISTS key 判断key是否存在,存在返回1,不存在返回0
- EXPIRE key 设置key过期时间,eg:Expire sun 60 (键sun设置过期1分钟,1分钟之后自动删除该键以秒计算,PEXIRE与此类似不过以毫秒计算)设置成功返回,失败返回0
- KEYS pattern 查询符合pattern条件的value
- RENAME oldkey newkey 修改旧键的名称,当两次改名一致返回错误,成功返回ok,其中Renamenx 命令用于在新的 key 不存在时修改 key 的名称 。