Redis是典型的key-value数据库,key一般是字符串,而value包含很多不同的数据类型:
Redis为了方便我们学习,将操作不同数据类型的命令也做了分组,在官网( https://redis.io/commands )可以查看到不同的命令:
不同类型的命令称为一个group,我们也可以通过help命令来查看各种不同group的命令:
接下来,我们就学习常见的五种基本数据类型的相关命令。
通用指令是部分数据类型的,都可以使用的指令,常见的有:
- KEYS:查看符合模板的所有key,*是所有的
- DEL:删除一个指定的key
- EXISTS:判断key是否存在
- EXPIRE:给一个key设置有效期,有效期到期时该key会被自动删除
- TTL:查看一个KEY的剩余有效期
- FLUSHDB:清空redis中的key
通过help [command] 可以查看一个命令的具体用法,例如:
keys n?me 使用占位符获取数据
keys nam* 获取nam开头的数据mset添加多个key-valuemset k1 v1 k2 v2 k3 v3mget获取多个key的值mget k1 k2append对某个key的值进行追加append key valuetype检查某个key的类型type keyselect切换Redis数据库select 0~15 Redis中共有16个数据库flushdb清空单个数据库flushdbflushall清空全部数据库flushallincr自动加1incr keydecr自动减1decr keyincrby指定数值加incrby key 10decrby指定数值减decrby key 10expire指定key的有效时间 单位是秒expire key 20 指定的key 20秒后失效pexpire指定key的有效时间 单位是毫秒pexpire key 2000 指定的key 2000毫秒后失效ttl检查key的剩余存活时间ttl keypersist撤销key的失效时间persist key
可以用散列类型保存对象和属性值
Redis中的List集合是双端循环列表,分别可以从左右两个方向插入数据。List集合可以当做队列使用,也可以当做栈使用
队列:存入数据的方向和获取数据的方向相反
栈:存入数据的方向和获取数据的方向相同
lrange key 0 -1 获取全部队列的数据lrem从存于key的列表中移除前count次出现的值为value的元素。这个count参数通过下面几种方式影响这个操作:
count>0:从头往尾移除值为value的元素。
count<0:从尾往头移除值为value的元素。
count=0:移除所有值为value的元素lrem list -2 “hello” 会从存于list的列表里移除最后两个出现的“hello”。
需要注意的是,如果list里没有存在key就会被当做空list处理,所以当key不存在的时候,这个命令会返回0lset设置index位置的list元素的值为valuelset key index value
redis中操作可以添加事务的支持.一项任务可以由多个redis命令完成,如果有一个命令失败导致入库失败时.需要实现事务回滚。
OKexec执行所有multi之后发的命令127.0.0.1:6379> exec
OKdiscard丢弃所有multi之后发的命令127.0.0.1:6379> discard
OK
在Redis中,各数据的key都是一个自定义的名称,只需存取一致,这个key值是不影响基本使用的! 在开发实践中,由于需要存取的数据比较多,为了方便统一管理,这些key值应该有一定的规律,通常建议把数据的类型作为Key中的必要部分,例如“品牌”数据的Keys中就包含brand字样,如果对应的数据是列表,在key中可以使用list字样,如果对应的只是此类型的若干数据中的其中1个,在key中可以使用item字样、cart字样等等,Redis中Key中的多个单词,强烈建议使用冒号作为分隔符,例如:brand:item:1,这样在redis可视化工具中更容易看出keys之间的关系,接下来安装可视化工具Another Redis Desktop Manager
在Redis官网中提供了各种语言的客户端,地址:Connect with Redis clients | Docs
上一篇文章:下一篇文章:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/69525.html