Redis持久化(八)
Redis特性:
(1)多数据库
(2)Redis事物
(3)一个Redis最多可提供16个数据库,下标【0-15】
选择数据库:
select 1 (选择1号数据库,默认连接的是0号数据库)
移动数据库中的key:
move myset 1 (把关键字为myset的移动到1当中)
事物中只有一个客户运行,客户被串行话
(1)开启事务:multi
(2)提交事务:exec 网络故障或其他原因,没执行它之前的命令都不会被提交,但是,exec在网络断开或其他故障前执行,那么,提交就会执行。
(3)回滚事务:discard
事例:
窗口A执行
set num 1
multi
incr num
incr num
直到使用
exec
窗口B
执行
get num (num数值才会有变化)
Redis持久化
redis之所以高性能,是因为它把一切都存储在内存当中,为了使redis重启之后,仍然能保存之前存储的数据,就需要把数据从内存当中同步到硬盘上,这个过程称之为持久化。
持久化方式:
(1)(单独使用)RDB(默认):按照一定时间频率将内存中的数据或者快照保存到磁盘
(2)(单独使用)AOF:通过日志方式,记录服务器操作方式,启动服务器时,就会读取日志,重新构建数据库,保证数据是完整的
(3)无持久化:配置禁用持久化,达到缓存效果
(4)RDB与AOF共用
(5)持久化方法可以使用一个种或者两种结合的方式进行存储。
RDB:
优点:
(1)可将数据库保存在一个文件上,便于备份,可以很好的恢复数据。
(2)可方便移植
(3)性能最大化,分出小的进程,再由小进程执行,可开启小的进程处理持久化操作
缺点:
(1)不能保证数据完整性,最大数据的完整性,数据易丢失。
(2)当数据过大,服务器会停止,进程处理将会延迟几百到一千毫秒
配置过程:
(1)编辑redis.conf文件:vim redis.conf
save 900 1
每15分钟至少又一个key发生变化,会快照一次,写一次
save 300 10
save 60 10000
dbfilename 保存的文件
dir ./ 保存的文件路径
(2)找到时间戳,可配置秒、分、时与之存储量
(3)rdb文件默认保存在redis安装目录
AOF
优点:
(1)同步写入频率高
(2)不破坏写入日志数据
(3)当数据过大,可启动修改重写机制,保证修改数据的更新
(4)日志文件格式清晰,易于理解,可以通过这样进行重建数据
缺点:
(1)效率低低于RDB,修改就存在硬盘上的,同步方式降低了效率。
(2)文件偏大与rdb文件
配置过程:
(1)编辑redis.conf:vim redis.conf
(2)找到 appendonly no 修改为 yes (改为使用AOF方式)
修改策略
appendfsync always(为了数据安全,去除它的注解)
设置好两个配置后,执行
./bin/redis-cli
shutdown
重启sever
./bin/redis-server ./redis.conf
窗口A:
插入数据:
set name a
set age 10
flushall
窗口B:
执行:
./bin/redis-cli shutdown
编辑:
vim appendonly.aof
删除最后一行的flushall 保存
窗口A:
重启sever
./bin/redis-server ./redis.conf
进入客户端:
./bin/redis-cli
查看:
keys *
数据还原了。
Redis持久化(八)的更多相关文章
- redis——持久化篇
众所周知,redis是内存数据库,它把数据存储在内存中,这样在加快读取速度的同时也对数据安全性产生了新的问题,即当redis所在服务器发生宕机后,redis数据库里的所有数据将会全部丢失. 为了解决这 ...
- Redis持久化persistence
一.前言 由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据. R ...
- redis 持久化方式
对于persistence持久化存储,Redis提供了两种持久化方法: Redis DataBase(简称RDB) 执行机制:快照,直接将databases中的key-value的二进制形式存储在了r ...
- Redis持久化--RDB+AOF(转)
1.Redis两种持久化方式 RDB 执行机制:快照,直接将databases中的key-value的二进制形式存储在了rdb文件中 优点:性能较高(因为是快照,且执行频率比aof低,而且rdb文件中 ...
- 第十章 Redis持久化--RDB+AOF
注:本文主要参考自<Redis设计与实现> 1.Redis两种持久化方式 RDB 执行机制:快照,直接将databases中的key-value的二进制形式存储在了rdb文件中 优点:性能 ...
- redis持久化RDB和AOF
Redis 持久化: 提供了多种不同级别的持久化方式:一种是RDB,另一种是AOF. RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot). AO ...
- Redis持久化
Redis持久化 快照(默认) 将内存中的数据以快照的方式写入到二进制文件中,默认文件名是dump.rdb. 配置自动化做快照持久化(如redis在n秒内如果超过m个key被修改就自动做快照) sav ...
- redis持久化机制
redis持久化 redis的数据存在内存中,所以存取性能好.但是存在内存中的数据存在一个问题,一旦机器重启,内存数据消失.为了解决这个问题,redis支持持久化.持久化就是为了解决内存数据丢失时恢复 ...
- Redis-cluster集群【第二篇】:redis持久化
Redis持久化原理: Redis支持两种持久化:RDB和AOF模式 一.名词解释: RDB:持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot).AOF ...
随机推荐
- C#最受欢迎功能 -- C#1至C#7
不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: http://www.dotnetcurry.com/csharp/1 ...
- Javascript 中 switch case 等于 (== )还是 恒等于(===)?
Javascript 中 switch case 等于 (== )还是 恒等于(===)? 可以测试一下以下代码,这个 case 中是 等于(==)还是恒等于(===) <script> ...
- Web验证方式(1)--Http Basic Authentication
Http Basic Authentication是HTTP协议中定义的Web系统中的验证方式.参考wiki 主要的实现机制如下: 1. 用户通过浏览器匿名访问web资源. 2. web服务器检测到w ...
- CenOS中的yum配置文件CentOS-Base.repo里面的参数都是何含义? souhu CentOS-Base.repo
souhu yum服务器CentOS-Base.repo 将$releasever替换为操作系统版本号 # CentOS-Base.repo # # The mirror system uses t ...
- Web service 框架比较CXF xfire aisx2 aisx
Web 服务框架.它还体现了从 Axis 1.x 系列获得的经验和最近两年在 Web 服务领域的发展.推出 Axis2 的主要原因之一是从速度和内存方面获得更好的性能——不过还添加了一些新特性和功能. ...
- [C++ Primer] 第8章: IO库
IO类 iostream定义了读写流的基本类型 istream, wistream 从流读取数据 ostream, wostream 向流写入数据 iostream, wiostream 读写流 fs ...
- 【转】纵表、横表互转的SQL
纵表.横表互转的SQL 原文1:http://takkymj.iteye.com/blog/751401 横表就是普通的建表方式,如一个表结构为: 主键.字段1.字段2.字段3... 如果变成纵表 ...
- Makefile编写 三 伪目标的作用
本节我们讨论一个Makefile中的一个重要的特殊目标:伪目标. 伪目标是这样一个目标:它不代表一个真正的文件名,在执行make时可以指定这个目标来执行其所在规则定义的命令,有时我们也可以将一个伪目标 ...
- 《js笔记》
1.判断浏览器是否启用cookie: if (navigator.cookieEnabled==true) { alert("已启用 cookie") } else { alert ...
- webkit内核的浏览器为什么removeAttribute('style')会失效?
做了一些研究,应该算是理清了问题. 首先,我们在这里常说的「属性」(attributes)其实分为两种:内容属性(content attributes)以及 IDL 属性(IDL attributes ...