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常见操作命令的更多相关文章

  1. Redis入门很简单之二【常见操作命令】

    Redis入门很简单之二[常见操作命令] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存  Redis提供了丰富的命令,允许我们连接客户端对其进行直接操作.这里简单介绍一 ...

  2. redis常见命令使用

    这篇经验主要介绍了Redis常见用的一些操作命令.这篇例子是在windows上操作的.linux类似.写的一些基础,大神就别看了. 工具/原料   redis windows 方法/步骤   1 可以 ...

  3. Redis日常操作命令小结

    Redis缓存服务是运维工作中比较常见的一种维护工作,下面就redis日常操作命令在此做一简单小结,以备查用: 1)连接redis服务命令# redis-cli -h redis主机ip或主机域名 - ...

  4. Redis常见七种使用场景(PHP实战)

    edis 是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 本篇文章,主要介绍利用Redis常见应用场景下PHP实战. ...

  5. redis常见错误处理

    --1]当内存不足引起  redis出错 先尝试下列语句,指定redis使用内存 redis-server.exe redis.windows.conf --maxheap 200mredis-ser ...

  6. Redis常见配置文件详解

    Redis常见配置文件详解 # vi redis.conf 1 2 3 daemonize yes #是否以后台进程运行 4 5 pidfile /var/run/redis/redis-server ...

  7. Redis 常见的性能问题都有哪些?如何解决?

    Redis 常见的性能问题都有哪些?如何解决? Master写内存快照,save命令调度rdbSave函数,会阻塞主线程的工作,当快照比较大时对性能影响是非常大的,会间断性暂停服务,所以Master最 ...

  8. redis常见重要性能指标数据分析和相关问题解决方案

    性能相关的数据指标 通过Redis-cli命令行界面访问到Redis服务器,然后使用info命令获取所有与Redis服务相关的信息.通过这些信息来分析文章后面提到的一些性能指标. info命令输出的数 ...

  9. Redis常见延迟问题定位与分析

    Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右.但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头 ...

随机推荐

  1. No.1101_第十次团队会议

    今天项目进展很多,大家都在现在的成果而开心,信心高涨,后面的任务的完成也基本都能指日可待.之前团队出现了各种问题,沟通出现了很多障碍,导致各方面受阻.现在大家再面对面坦诚相对,交流了一下自己的想法,结 ...

  2. Linux内核分析 读书笔记 (第一章、第二章)

    第一章 Linux内核简介 1.1 Unix的历史 Unix很简洁,仅仅提供几百个系统调用并且有一个非常明确的设计目的. 在Unix中,所有东西都被当做文件,这种抽象使对数据和对设备的操作是通过一套相 ...

  3. 2013337朱荟潼 Linux第三章读书笔记——进程管理

    第三章 进程管理 总结 fork创造的子进程复制了父进程资源,包括内存及进程描述符的内容,资源的复制而不是指针的复制. vfork的行为更像一个线程(指没有自已独立的内存空间),更明显的是vfork的 ...

  4. Window环境下RabbitMQ的安装和配置教程

    一.安装 首先,RabbitMQ基于Erlang语言环境,所以需要先安装Erlang. Erlang下载地址:http://www.erlang.org/downloads 按照安装程序默认安装完成就 ...

  5. MVC 如何设定默认默认路由为指定的Area下的某个action(笔记)

    感谢这篇博文的作者:http://blog.csdn.net/chenqiangdage/article/details/48136601 最近使用VS2015开发一个统一认证服务,想将API自己生成 ...

  6. python基础教程1:入门基础知识

    写在系列前,一点感悟 没有梳理总结的知识毫无价值,只有系统地认真梳理了才能形成自己的知识框架,否则总是陷入断片儿似的学习-遗忘循环中. 学习方法真的比刻苦"傻学"重要多了,而最重要 ...

  7. 【转】fiddler抓包时出现了tunnel to ......443 解密HTTPS数据

    转: 1.在抓取https的数据包时,fiddler会话栏目会显示“Tunnel to….443”的信息,这个是什么原因呢? connect表示https的握手(也就是认证信息,只要是https就要进 ...

  8. nginx “403 Forbidden” 错误的原因及解决办法

    nginx 的 403 Forbidden errors 表示你在请求一个资源文件但是nginx不允许你查看. 403 Forbidden 只是一个HTTP状态码,像404,200一样不是技术上的错误 ...

  9. C++11 初始化

    C++11 初始化 统一初始化语法        C++11新添加初始化列表 std::initializer_list<>类型,可以通过{}语法来构造初始化列表 .初始化列表是常数:一旦 ...

  10. 【BZOJ1449】[JSOI2009]球队收益(网络流,费用流)

    [BZOJ1449][JSOI2009]球队收益(网络流,费用流) 题面 BZOJ 洛谷 题解 首先对于一支队伍而言,总共进行多少场比赛显然是已知的,假设是\(n_i\)场,那么它的贡献是:\(C_i ...