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

博客分类:

Redis提供了丰富的命令,允许我们连接客户端对其进行直接操作.这里简单介绍一下作为常用的一些命令,包括对字符串、列表、集合、有序集合、哈希表的操作,以及一些其他常用命令。

【 基本操作】

1. 添加记录:通常用于设置字符串(string)类型,或者整数类型;如果key已经存在,则覆盖其对应的值。

  1. set name James

2. 获取记录:通过键获取值。

  1. get name

3. 递增/递减:针对整数类型,仍然使用类似于字符串的操作方式:并且可以进行递增、递减操作。

  1. set age 22
  2. incr age
  3. decr age

4. 在key不存在时才添加:

  1. setnx name Nick

5. 设置失效时间:以避免数据量的持续增长,如下命令:设置过期时间为5s。

  1. setex name 5 Bill

上述命令,等价于:

  1. set name Bill
  2. expire name 5

【列表操作】可以使用列表(list)来模拟队列(queue)/堆栈(stack)。
1. 添加元素:给列表userList从右边压入字符串James。

  1. rpush userList James

2. 移除元素:从userList左侧移除第一个元素。

  1. lpop userList

3. 列表范围:如下命令获取从0(左侧起始位置)到-1(右侧最后一个位置)之间的所有元素,并且包含起始位置的元素。

  1. lrange userList 0 -1

4. 设置元素:设置userList位置1处为新值,对包含空格的字符串使用引号括起来。

  1. lset userList 1 "Nick Xu"

5. 列表长度:

  1. llen userList

6. 裁剪列表:执行如下命令后,列表userList只包含原始列表从位置1到3的连续元素。

  1. ltrim userList 1 3

【集合操作】集合中元素不能重复,并且集合是无序的。
 1. 添加元素:可同时添加多个元素。

  1. sadd fruit watermelon
  2. sadd fruit apple pear

2. 查看集合中的所有元素:

  1. smembers fruit

3. 移除元素:

  1. srem fruit apple

4. 集合大小:返回集合中包含的元素的个数。

  1. scard fruit

5. 集合中是否包含元素:

  1. sismember fruit pear

6. 集合的运算:如下命令返回集合food和fruit的并集,另外还有交集(sinter)、差集(sdiff)运算。

  1. sunion food fruit

【有序集合】sorted set
  1. 添加元素:根据第二个参数进行排序。

  1. zadd user 23 James

2. 重复添加:存在相同的value,权重参数更新为24。

  1. zadd user 24 James

3. 集合范围:找到从0到-1的所有元素,并且是有序的。

  1. zrange user 0 -1

【哈希表操作】

1. 添加元素:给哈希表china添加键为shannxi,值为xian的成员。

  1. hset china shannxi xian

2. 获取元素:获取哈希表china中键shannxi所对应的value值。

  1. hget china shannxi

3. 返回哈希表所有的key:

  1. hkeys china

4. 返回哈希表所有的value:

  1. hvals china

【补充:对key的操作】

1. 删除key:

  1. del name

2. key是否存在:

  1. exists name

3. key的存活时间:time to live

  1. ttl name

4. 查询所有的key:

  1. keys *

5. 模糊匹配:

  1. keys name*

6. 将key移动到数据库1中:

  1. move name 1

【其他命令】
   1. 获取服务器信息:

  1. info

2. 获取特定信息:

  1. info keyspace

3. 选择数据库:在Redis中默认有16个数据库(编号从0到15),默认是对数据库0进行操作。

  1. select 1

4. 当前数据库中key的数据:

  1. dbsize

5. 清空当前数据库:

  1. flushdb

6. 清空所有数据库:

  1. flushall

7. 测试连接:返回pong即为连接畅通。

  1. ping

8. 退出客户端:或者是exit   命令。

  1. quit

9. 关闭服务器:

  1. shutdown

Redis入门很简单之二【常见操作命令】的更多相关文章

  1. Redis入门很简单之三【常见参数配置】

    Redis入门很简单之三[常见参数配置] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存中间件memcached  Redis的一下常见设置都是通过对redis.conf ...

  2. Redis入门很简单之六【Jedis常见操作】

    Redis入门很简单之六[Jedis常见操作] http://www.tuicool.com/articles/vaqABb http://www.cnblogs.com/stephen-liu74/ ...

  3. Redis入门很简单之七【使用Jedis实现客户端Sharding】

    Redis入门很简单之七[使用Jedis实现客户端Sharding] 博客分类: NoSQL/Redis/MongoDB redisjedisspringsharding分片 <一>. 背 ...

  4. Redis入门很简单之五【Jedis和Spring的整合】

    Redis入门很简单之五[Jedis和Spring的整合] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存jedisspring  在上一篇文章中,简单介绍了Jedis的 ...

  5. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  6. Redis入门很简单之四【初识Jedis】

    Redis入门很简单之四[初识Jedis] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存jedis  使用Jedis提供的Java API对Redis进行操作,是Red ...

  7. 踢爆IT劣书出版黑幕——由清华大学出版社之《C语言入门很简单》想到的(1)

    1.前言与作者 首先声明,我是由于非常偶然的机会获得<C语言入门很简单>这本书的,绝对不是买的.买这种书实在丢不起那人. 去年这书刚出版时,在CU论坛举行试读推广,我当时随口说了几句(没说 ...

  8. [电子书] 《Android编程入门很简单》

    <Android编程入门很简单>是一本与众不同的Android学习读物,是一本化繁为简,把抽象问题具体化,把复杂问题简单化的书.本书避免出现云山雾罩.晦涩难懂的讲解,代之以轻松活泼.由浅入 ...

  9. 《Mysql 入门很简单》(读后感①)

    下载完整版<Mysql 入门很简单>,点击这里~: http://files.cnblogs.com/files/zhengyeye/MySQL%E5%85%A5%E9%97%A8%E5% ...

随机推荐

  1. [20190727NOIP模拟测试9]单(single) 题解(树上dp)

    啊啊啊啊啊啊啊啊考场上差一点就A掉了5555 千里之堤溃于蚁穴……鬼知道最后一步那么显然的柿子我为什么没考虑用上…… 观察数据范围可知,出题人期望我们想出一个$O(n)$的做法 当然也有可能是$O(n ...

  2. Maximum of lines in a DataBand

    Hello! I have a problem.I have a DataBand, but I need it to grow only up to 14 lines. If it is beyon ...

  3. python3反转列表的三种方式

    1.内建函数 reversed() li = [1,2,3,4,5,6] a = list(reversed(li)) print(a) 注意:reversed()函数返回的是一个迭代器,而不是一个L ...

  4. Python笔记(七)_全局变量与局部变量

    全局变量与局部变量:在函数外部或内部定义的变量 1. 函数内部的变量名首次出现,且在=号左边 不管这个变量在全局域中有没有定义该变量名,都被视为一个局部变量 例1: >>>num=1 ...

  5. Cocos2d-x之事件处理机制

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. 事件处理机制分为单点触屏,多点触屏,加速度事件,键盘事件和鼠标事件.在现在的智能手机中,触屏的应用比较的广泛,尤其是多点触屏事件的技术,使 ...

  6. 构建一个简单的Spring Boot项目

    11 构建一个简单的Spring Boot项目 这个章节描述如何通过Spring Boot构建一个"Hello Word"web应用,侧重介绍Spring Boot的一些重要功能. ...

  7. Bellman-Ford&&SPFA算法详解

    Dijkstra在正权图上运行速度很快,但是它不能解决有负权的最短路,如下图: Dijkstra运行的结果是(以1为原点):0 2 12 6 14: 但手算的结果,dist[4]的结果显然是5,为什么 ...

  8. Linux服务器攻击防御(转)

    攻击小贴士 如果你打算做一些搓事,那么你需要采取一些措施来保护自己.这是一切的前提,不然我会追杀你,并破坏你的生活. 我总结了几大忌(fuckups): 不要在honeypots执行操作.(在一切开始 ...

  9. [Java 教程 04] Java基础语法

    在上一篇文章中我们已经运行了个简单的java程序,但是没有给大家讲解代码部分的内容与含义.学习,我们要做到知其然而知其所以然,所以本篇文章我们就来讲解java程序的基本语法,学完这篇文章你再回头看上篇 ...

  10. System.Net.Mail.SmtpException:不允许使用邮箱名称.

    使用SmtpClient发送邮件的时候,出现了如题错误. 解决方案: 将  SmtpClient.UseDefaultCredentials  属性设置为 true . 官方文档说明: Some SM ...