Redis常见操作命令
1.库相关
select 索引 =》 选择库
dbsize =》 查询当前库中Key的数量
flushdb =》 清空当前库
flushall =》 清空所有库(建议不要用,除非你跑路)
2.Key相关
keys * =》 取出当前库所有Key
exists {Key} =》 判断Key是否存在,存在返回1,不存在返回0
move {Key} {DbIndex} =》 从当前库剪切指定Key到指定库中
expire {Key} {秒} =》 为指定的Key设置过期时间
ttl {Key} =》 查看指定Key还有多少秒过期,-1表示永不过期,-2表示已过期
type {Key} =》 查看Key是什么类型
3.String相关
set {Key} {Value} =》 新建一个String类型的缓存数据
get {Key} =》 根据Key获取Value
del {Key} =》 根据Key删除缓存
append {Key} {String} =》 根据Key在Value的末尾增加字符串
strlen {Key} =》 根据Key返回Value的长度
incr {Key} =》 对指定Key的Value数值加1(要求Value可以转换为数值,否则返回错误)
decr {Key} =》 对指定Key的Value数值减1(要求Value可以转换为数值,否则返回错误)
incrby {Key} {Num} =》 对指定Key的Value数值加Num(要求Value可以转换为数值,否则返回错误)
decrby {Key} {Num} =》 对指定Key的Value数值减Num(要求Value可以转换为数值,否则返回错误)
getrange {Key} {StartNum} {EndNum} =》 根据Key获取Value指定区域范围内的值(只是返回并没有对Value进行截取)
setrange {Key} {StartNum} {String} =》 根据Key对Value指定区间范围内的值进行覆写
setex {Key} {秒} {Value} =》 新建一个String类型的缓存数据并设置过期时间
setnx {Key} {Value} =》 新建一个String类型的缓存数据,存在则不进行任何操作,不存在则创建。
mset {Key1} {Value1} {Key2} {Value2}... =》 用于同时创建多个String类型的缓存数据
mget {Key1} {Key2}.... =》 用于同时获取多个Key的Value
msetnx {Key1} {Value1} {Key2} {Value2}... =》 用于同时创建多个String类型的缓存数据,若其中某一个Key已经存在,则不执行任何操作。
getset {Key} {Value} => 先获取指定Key的Value值,如不存在则返回null,然后对指定Key设置Value值。(先get后set)
4.List相关(值可以重复)
lpush {Key} {Value1} {Value2}... =》 将Value值挨个插入到指定Key的头部,如lpush mylist a b c,则第一个元素为c,第二个为b,第三个为a(后进先出)
rpush {Key} {Value1} {Value2}... =》 将Value值挨个插入到指定Key的尾部,如rpush mylist a b c,则第一个元素为a,第二个为b,第三个为c(先进先出)
lrange {Key} {StartNum} {EndNum} =》 根据Key获取Value指定区域范围内的值(只是返回并没有对Value进行截取)
lpop {Key} =》 获取栈顶元素并删除
rpop {Key} =》 获取栈尾元素并删除
lindex {Key} {Index} =》 通过Key获取Value指定索引的值
llen {Key} =》 获取指定Key的Value长度
lrem {Key} {Count} {Value} =》 从指定Key的Value中移除指定个数的Value值
ltrim {Key} {StartIndex} {EndIndex} =》 截取指定范围的值后再赋给Key
rpoplpush {Key1} {Key2} =》 将Key1栈尾的元素添加到Key2的栈顶
lset {Key} {Index} {Value} =》 将Key对应的列表指定的索引设置为Value
linsert {Key} {before|after} {Value1} {Value2} =》在Value1之前或之后插入Value2
5.Set相关(值不可以重复,一般用于去重、过滤,因为Set无序无重复)
sadd {Key} {Value1} {Value2} ... => 新建一个Set类型的缓存数据
smembers {Key} => 获取指定Key的Value
sismember {Key} {Value} =》 指定的Value是否存在于Key中
scard {Key} =》 获取指定Key中元素的个数
srem {Key} {Value1} {Value2} =》 删除集合中指定的元素
srandmember {Key} {Num} =》 从集合中获取指定数量的随机元素
spop {Key} {Num} =》 从集合中删除指定数量的随机元素
smove {Key1} {Key2} {Key1‘s Value} =》 将Key1中的指定元素赋给Key2
sdiff {Key1} {Key2} =》 求两个集合之间的差集
sinter {Key1} {Key2} =》 求两个集合之间的交集
sunion {Key1} {Key2} =》 求两个集合之间的并集
6.Hash相关(哈希,Key/Value模式不变,但Value是一个键值对)
hset {Key} {ValueKey} {ValueValue} =》 新建一个Hash类型的缓存数据,例如 hset person name fanqi
hmset {Key} {ValueKey1} {ValueValue1} {ValueKey2} {ValueValue2} =》 新建一个Hash类型的缓存数据,支持多个字段,例如 hset person name fanqi age 24
hget {Key} {ValueKey} =》 获取哈希字段的值
hmget {Key} {ValueKey1} {ValueKey2} =》 获取多个哈希字段的值
hgetall {Key} =》 获取哈希中的所有字段和值
hdel {Key} {ValueKey1} {ValueKey2} =》 删除一个或多个散列字段
hlen {Key} =》 获取哈希中的字段数
hexists {Key} {ValueKey} =》 判断是否存在指定的哈希字段,存在返回1,不存在返回0
hkeys {Key} =》 获取散列中的所有字段
hvals {Key} =》 获取哈希值中的所有值
hincrby {Key} {ValueKey} {Num} =》 按给点数字递增哈希字段的整数值
hincrbyfloat {Key} {ValueKey} {Num} =》 按给点数字递增哈希字段的小数值
hsetnx {Key} {ValueKey} {ValueValue} =》 仅当字段不存在时,设置哈希字段的值
7.ZSet【Sorted Set】相关(在Set的基础上,加一个Score值)
zadd {Key} {Score1} {Value1} {Score2} {Value2} =》 新建一个ZSet类型的缓存数据
zrange {Key} {StartIndex} {EndIndex} [withscores] =》 根据Key获取Value指定区域范围内的值(只是返回并没有对Value进行截取),可以传递withscores选项以便将元素的分数与元素一起返回。
zrangebyscore {Key} {mix} {max} [withscores] [limit 开始下标 多少步] =》 返回排序集合中key得分在min 和max之间(包含)的所有元素,可以使用(来表示不包含。
zrem {Key} {Value} =》 删除该元素,对应的分数score也随之删除
zcard {Key} =》 获取元素个数
zcount {Key} {StartScore} {EndScore} =》 统计指定分数区间的元素个数
zrank {Key} {Value} =》 拿到指定元素的下标
zscore {Key} {Value} =》 输出Value对应的分数
zrevrank {Key} {Value} =》 逆序获得元素的下标值
zrevrange {Key} {StartIndex} {EndIndex} =》 根据Key逆序获取Value指定区域范围内的值
zrevrangebyscore {Key} {Max} {Min} =》 返回排序集合中key得分在max 和之间min(包括得分等于max或min的元素)的所有元素,分数从高分到低分排序。
Redis常见操作命令的更多相关文章
- Redis入门很简单之二【常见操作命令】
Redis入门很简单之二[常见操作命令] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存 Redis提供了丰富的命令,允许我们连接客户端对其进行直接操作.这里简单介绍一 ...
- redis常见命令使用
这篇经验主要介绍了Redis常见用的一些操作命令.这篇例子是在windows上操作的.linux类似.写的一些基础,大神就别看了. 工具/原料 redis windows 方法/步骤 1 可以 ...
- Redis日常操作命令小结
Redis缓存服务是运维工作中比较常见的一种维护工作,下面就redis日常操作命令在此做一简单小结,以备查用: 1)连接redis服务命令# redis-cli -h redis主机ip或主机域名 - ...
- Redis常见七种使用场景(PHP实战)
edis 是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 本篇文章,主要介绍利用Redis常见应用场景下PHP实战. ...
- redis常见错误处理
--1]当内存不足引起 redis出错 先尝试下列语句,指定redis使用内存 redis-server.exe redis.windows.conf --maxheap 200mredis-ser ...
- Redis常见配置文件详解
Redis常见配置文件详解 # vi redis.conf 1 2 3 daemonize yes #是否以后台进程运行 4 5 pidfile /var/run/redis/redis-server ...
- Redis 常见的性能问题都有哪些?如何解决?
Redis 常见的性能问题都有哪些?如何解决? Master写内存快照,save命令调度rdbSave函数,会阻塞主线程的工作,当快照比较大时对性能影响是非常大的,会间断性暂停服务,所以Master最 ...
- redis常见重要性能指标数据分析和相关问题解决方案
性能相关的数据指标 通过Redis-cli命令行界面访问到Redis服务器,然后使用info命令获取所有与Redis服务相关的信息.通过这些信息来分析文章后面提到的一些性能指标. info命令输出的数 ...
- Redis常见延迟问题定位与分析
Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右.但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头 ...
随机推荐
- 20135234mqy-——信息安全系统设计基础第十三周学习总结
第十一章 网络编程 11.1 客户端-服务器编程模型 基本操作:事务 当一个客户端需要服务时,向服务器发送一个请求,发起一个事务. 服务器收到请求后,解释它,并以适当的方式操作它的资源. 服务器给客户 ...
- 腾讯云申请的64位ubuntu服务器配置php环境
腾讯云申请的64位ubuntu服务器配置php环境 一.首先还是安装Lamp组合 Linux+Apache+Mysql+php 直接命令 sudo apt-get install apache2 su ...
- Window环境下RabbitMQ的安装和配置教程
一.安装 首先,RabbitMQ基于Erlang语言环境,所以需要先安装Erlang. Erlang下载地址:http://www.erlang.org/downloads 按照安装程序默认安装完成就 ...
- 11th 最后的致意
“终于我们不再是师生”,无论日后我们是否是师生,但这段经历是不可否认的,可以说软件工程这一门课程恐怕是我学生生涯中终生难忘的一段体验.即便不是从知识上,从另一个方面来讲,也教给了我一种做人做事的态度. ...
- Xmind 8 pro 软件破解版
转载地址:https://blog.csdn.net/qq_16093323/article/details/80967867 Xmind是一款非常专业的思维导图软件,收费好几百元,不过还是很多用户, ...
- SpringBoot 1.快速搭建一个 SpringBoot Maven工程
一.新建一个Maven工程 (1)选择创建简单MAVNE工程 (2)输入你自己的MAVEN工程的Group Id(必填).Artifact Id(必填).Version(必填).Packaging(必 ...
- Tomcat源码解析-整体流程介绍
一.架构 下面谈谈我对Tomcat架构的理解 总体架构: 1.面向组件架构 2.基于JMX 3.事件侦听 1)面向组件架构 tomcat代码看似很庞大,但从结构上看却很清晰和简单,它主要由一堆组件组成 ...
- 自动更新前加密:Clickonce用法
一.加密dll 新建一个windows form application: static void Main(string[] args) { Process. ...
- bzoj4458 GTY的OJ (优先队列+倍增)
把超级钢琴放到了树上. 这次不用主席树了..本来以为会好写一点没想到细节更多(其实是树上细节多) 为了方便,对每个点把他的那个L,R区间转化成两个深度a,b,表示从[a,b)选一个最小的前缀和(到根的 ...
- 【bzoj2754】 SCOI2012—喵星球上的点名
http://www.lydsy.com/JudgeOnline/problem.php?id=2754 (题目链接) 题意 给出$n$个名字串,$m$个点名串,问对于每一个姓名串,它包含多少个点名串 ...