字符串类型是redis支持的最简单的数据类型,同时最简单的键值对类型也是key和value都是单个字符串,本质上就是字符串之间的相互映射,redis官网String类型简介页面提到可以用于缓存HTML片段或页面内容。
redis支持设置/获取单个键值对,批量设置/获取键值对,设置键值对的过期时间等,本文学习在控制台中操作字符串类型键值对的基本方式。
打开控制台,输入redis-cli,开始操作redis数据。
set命令用于设置键值对,其形式为SET key value(后面还可以附件其它参数,详细介绍见参考文献4),设置后,可以通过get命令获取指定键的值,其形式为GET key,使用示例如下图所示:
在控制台中输入命令过程中,会看到命令相关的语法提示信息,便于用户输入。set命令还可以用于修改指定键的值,如果键值对已存在,再调用set设置时,则会替换之前的值,如下图所示。
redis支持使用mset和mget命令批量设置/获取键值对,其形式为MSET key value [key value …],MGET key [key …],使用示例如下图所示:
redis支持使用del命令删除单个或多个键值对,其形式为DEL key [key …],同时支持使用exists命令获取指定的单个key或多个key是否存在,其形式为EXISTS key [key …],如果是多个key时,exists命令返回存在的key的数量,使用示例如下图所示:
redis支持使用setex命令同时设置键值对及其过期时间(使用set加ex命令也能达到相同效果,使用getex命令也可以设置指定键值对的过期时间),时间设置单位为秒,其形式为SETEX key seconds value,同时支持使用ttl命令查看指定key的剩余过期时间,其形式为TTL key,使用示例如下图所示,可以看到,未到过期时间,可以使用get命令获取键值,超过过期时间后,再获取键值对的值就获取不到了。
如果键值对的值为数字,redis支持使用DECR和INCR命令对值进行减一或加一操作,其形式为DECR key,INCR key,同时redis支持使用DECRBY和INCRBY命令对值减少或增加指定数值,其形式为DECRBY key decrement,INCRBY key increment,使用示例如下图所示:
除了上述命令,与string类型相关的命令还有10个左右,如获取值长度的strlen命令、追加值内容的append命令的,详细的请查看参考文献4。
最后提一点,字符串类型的值,最大能保存512M的内容。
参考文献:
[1]https://redis.io/
[2]https://redis.io/docs/data-types/
[3]https://redis.io/docs/data-types/strings/
[4]https://redis.io/commands/?group=string
[5]一小时Redis教程,https://www.bilibili.com/video/BV1Jj411D7oG/?spm_id_from=333.337.search-card.all.click&vd_source=db4a1f65c18549c78df3e9d579e59e19