1.Key命令

设置key的过期时间。

expire key second:设置key的过期时间

ttl key:查看key的有效期(如果显示正数说明该key正在倒计时,如果是-1说明该key永久保存,是持久化的,如果是-2该key不存在)

persist key:清除key的过期时间。key持久化

使用场景:电商活动有时间限制

2.Redis的持久化方案

redis的所有数据都是保存到内存中。

Rdb:快照形式,定期把内存中当前时刻的数据保存到磁盘。redis默认支持到持久化方案。

aof形式:append only file。把所有对redis数据库操作的命令,增删改操作的命令。保存到文件中。数据库恢复时把所有的命令执行一遍即可。

在redis.conf配置文件中配置。

Rdb:

Aof的配置:

两种持久化方案同时开启使用aof文件来恢复数据库。但是开启redis持久化。会影响redis数据库性能,所以一般默认不开启持久化

3.Redis的特性

3.1 多数据库

一个redis实例可以包含多个数据库,客户端可以指定连接某个redis实例的哪个数据库,就如同一个mysql中创建了多个数据库,客户端连接时指定连接哪个数据库。

可以根据redis的图形化界面,看到一个redis实例最多提供16个数据库,下表从0到15,客户端默认链接第0号数据库,也可以通过select选择链接那个数据库:

以下是连接库的命令

连接1号库:

连接2号库

将key一直到1号库:

3.2 消息订阅与发布

(1) subscribe channel:订阅频道,例:subscribe mychat,订阅mychat这个频道

(2) psubscribe channel*:批量订阅频道,例:psubscribe s*,订阅以"s"开头的频道

(3) publish channel content:在指定的频道中发布消息,例:publish mychat 'today is a newday'

步骤:

(1) 在第一个连接中,订阅cctv频道。此时如果没有人"发布"消息,当前窗口处于等待状态

(2) 在另个连接窗口中,在cctv频道中发布消息(这种消息订阅与发布的实时性很强)

3.3 redis事务

命令解释:

(1)multi:开启事务用于标记事务的开始,其后执行的命令都将被存入命令队列,直到执行exec时,这些命令才会被原子的执行,类似于关系型数据库中的:begin transaction

(2)exec:提交事务,类似于关系型数据库中commit

(3)discard:事务回滚,类似与关系型数据中的rollback

Redis学习记录(二)的更多相关文章

  1. Redis学习笔记二 (BitMap算法分析与BitCount语法)

    Redis学习笔记二 一.BitMap是什么 就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身.我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省 ...

  2. Material Calendar View 学习记录(二)

    Material Calendar View 学习记录(二) github link: material-calendarview; 在学习记录一中简单翻译了该开源项目的README.md文档.接下来 ...

  3. Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客

    ==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...

  4. JavaScript学习记录二

    title: JavaScript学习记录二 toc: true date: 2018-09-13 10:14:53 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...

  5. redis 学习(二)-- 通用命令

    redis 学习(二)-- 通用命令 1. keys pattern 含义:查找所有符合给定模式(pattern)的key 命令 含义 keys * 遍历所有 key keys he[h-l]* 遍历 ...

  6. 2.VUE前端框架学习记录二

    VUE前端框架学习记录二:Vue核心基础2(完结)文字信息没办法描述清楚,主要看编码实战里面,有附带有一个完整可用的Html页面,有需要的同学到脑图里面自取.脑图地址http://naotu.baid ...

  7. redis学习教程二《四大数据类型》

    redis学习教程二<四大数据类型>  四大数据类型包括:字符串    哈希    列表   集合一 : Redis字符串         Redis字符串命令用于管理Redis中的字符串 ...

  8. redis 学习记录

    http://www.yiibai.com/redis/redis_quick_guide.html Redis 是一款依据BSD开源协议发行的高性能Key-Value存储系统(cache and s ...

  9. C# Redis学习系列二:Redis基本设置

    上一篇:C# Redis学习系列一:Redis的认识.下载.安装.使用 一.redis 设置密码 使用下载好的 redis-cli.exe 指令: 1.设置密码: config set require ...

随机推荐

  1. sap smartform 打印乱码问题

    在smartforms打印的时候会遇到中英文结合的form 有时候系统会处理时出现乱码   有时不会  不知道是系统的事情还是配置的事情 现在是我的解决办法  因为是中英文结合 在中文环境建立form ...

  2. 洛谷P3384【模板】树链剖分

    题目描述 如题,已知一棵包含\(N\)个结点的树(连通且无环),每个节点上包含一个数值,需要支持以下操作: 操作\(1\): 格式: \(1\) \(x\) \(y\) \(z\) 表示将树从\(x\ ...

  3. Sublime编写React必备插件

    我终于看到了我要的攻略,sublime自带的format实在是不能看不能看不能看. 攻略地址:http://www.jianshu.com/p/ecf6c802fdc5?open_source=wei ...

  4. 非局部均值去噪(NL-means)

    非局部均值(NL-means)是近年来提出的一项新型的去噪技术.该方法充分利用了图像中的冗余信息,在去噪的同时能最大程度地保持图像的细节特征.基本思想是:当前像素的估计值由图像中与它具有相似邻域结构的 ...

  5. postgresql导出某张表的数据

    \copy 表名 to 路径 with csv 比如: \copy dataset to /home/backup/dataset.csv with csv \copy dataset to /hom ...

  6. vue简单的CheckBox节点树

    初学vue.js,恰好公司有个页面需要做一个简单的CheckBox组成的节点树,于是摸索着写了一个. 业务逻辑为:选中父节点,子节点全部选中:取消选中父节点,子节点全部取消:选中字节点,父节点选中. ...

  7. flask--数据库连接--URL

    使用URL制定数据库 数据库引擎 URL MySQL mysql://username:password@hostname/database Postgres postgresql://usernam ...

  8. 在spark2中的shell使用python3

    在spark2中的shell使用python3 spark2.0.0中的python默认使用python2,可以通过以下两种方式之一使用python3: PYSPARK_PYTHON=python3 ...

  9. 记一次有关GET/POST请求的Debug经历

    Bug描述: 电商网站, 产品列表页面,加入购物车按钮,当连续点击“加入购物车”按钮时,在MAC上的Safari上,只会有部分请求通过 Ajax 被发送出去,而在 Chrome/IE/Firefox ...

  10. Sometimes it takes going through something so awful to realize the beauty that is out there in this world.

    Sometimes it takes going through something so awful to realize the beauty that is out there in this ...