- 浏览: 178344 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (321)
- eclipse (4)
- idea (2)
- Html (8)
- Css (14)
- Javascript (8)
- Jquery (6)
- Ajax Json (4)
- Bootstrap (0)
- EasyUI (0)
- Layui (0)
- 数据结构 (0)
- Java (46)
- DesPattern (24)
- Algorithm (2)
- Jdbc (8)
- Jsp servlet (13)
- Struts2 (17)
- Hibernate (11)
- Spring (5)
- S2SH (1)
- SpringMVC (4)
- SpringBoot (11)
- WebService CXF (4)
- Poi (2)
- JFreeChart (0)
- Shiro (6)
- Lucene (5)
- ElasticSearch (0)
- JMS ActiveMQ (3)
- HttpClient (5)
- Activiti (0)
- SpringCloud (11)
- Dubbo (6)
- Docker (0)
- MySQL (27)
- Oracle (18)
- Redis (5)
- Mybatis (11)
- SSM (1)
- CentOS (10)
- Ant (2)
- Maven (4)
- Log4j (7)
- XML (5)
最新评论
1. Redis持久化
2. Redis的持久化之RDB方式
3. Redis的持久化之AOF方式
所有的数据都存在内存中,从内存当中同步到硬盘上,这个过程叫做持久化过程。 持久化操作,两种方式:rdb方式、aof方式,可以单独使用或者结合使用。 使用方法: rdb持久化方法:在指定的时间间隔写入硬盘 aof方式:将以日志,记录每一个操作,服务器启动后就构建数据库。 配置可以禁用持久化功能。 也可以同时使用两种方式。
2. Redis的持久化之RDB方式
RDB方式在Redis是默认支持的。 优势:只有一个文件,时间间隔的数据,可以归档为一个文件,方便压缩转移(就一个文件)。 劣势:如果宕机,数据损失比较大,因为它是没一个时间段进行持久化操作的。也就是积攒的数据比较多,一旦丢失无法找回。 查看配置文件 [root@#localhost ~]# cd /usr/local/redis/ [root@#localhost redis]# vi redis.conf /save n查找下一个 save 900 1 表示每900秒内至少有1个kery发生变化,就持久化 save 300 10 表示每300秒内至少有10个key发生变化,就持久化 save 60 10000 表示每60秒内至少有10000个key发生变化,就持久化 /dbfilename n查找下一个 dbfilename dump.rdb 保存的持久化的文件名 默认是dump.rdb /dir n查找下一个 dir ./ 表示文件存储路径是当前路径 :q 退出 查看当前路径里确实是有这个文件 [root@#localhost redis]# ll 总用量 52 drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 433 2月 27 07:04 dump.rdb -rw-r--r--. 1 root root 46697 2月 27 05:03 redis.conf 删除掉rdb文件,再启动redis,确保缓存中没有数据 [root@#localhost redis]# rm -rf dump.rdb [root@#localhost redis]# ll 总用量 48 drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 46697 2月 27 05:03 redis.conf [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# ll 总用量 48 drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 46697 2月 27 05:03 redis.conf [root@#localhost redis]# bin/redis-cli 127.0.0.1:6379> keys * (empty list or set) 保存几个数据,然后shutdown save保存退出 127.0.0.1:6379> set key1 name OK 127.0.0.1:6379> set key2 pass OK 127.0.0.1:6379> set key3 word OK 127.0.0.1:6379> shutdown save not connected> exit 再重启redis,这时候启动过程会进程rdbcheck验证然后加载redis目录下rdb文件,加载数据成功。 [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# bin/redis-cli 127.0.0.1:6379> keys * 1) "key2" 2) "key3" 3) "key1" 127.0.0.1:6379> exit 关闭redis,把redis下的rdb文件剪切到其他地方去/root下,然后再启动 [root@#localhost redis]# bin/redis-cli shutdown [root@#localhost redis]# ps -ef | grep -i redis root 7377 7281 0 03:03 pts/0 00:00:00 grep --color=auto -i redis [root@#localhost redis]# ll 总用量 52 drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 114 2月 28 03:03 dump.rdb -rw-r--r--. 1 root root 46697 2月 27 05:03 redis.conf [root@#localhost redis]# mv dump.rdb /root/ [root@#localhost redis]# ll 总用量 48 drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 46697 2月 27 05:03 redis.conf [root@#localhost redis]# ll /root/ 总用量 1524 -rw-------. 1 root root 1259 2月 21 06:31 anaconda-ks.cfg -rw-r--r--. 1 root root 114 2月 28 03:03 dump.rdb drwxrwxr-x. 6 root root 4096 5月 17 2017 redis-3.2.9 -rw-r--r--. 1 root root 1547695 5月 17 2017 redis-3.2.9.tar.gz [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# bin/redis-cli 127.0.0.1:6379> keys * (empty list or set) 关闭redis,恢复数据就把/root下的rdb文件拷贝回来,再重启redis [root@#localhost redis]# ps -ef | grep -i redis root 7383 1 0 03:04 ? 00:00:00 bin/redis-server *:6379 root 7392 7281 0 03:06 pts/0 00:00:00 grep --color=auto -i redis [root@#localhost redis]# bin/redis-cli shutdown [root@#localhost redis]# cp /root/dump.rdb /usr/local/redis/ cp:是否覆盖"/usr/local/redis/dump.rdb"? y [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# bin/redis-cli 127.0.0.1:6379> keys * 1) "key2" 2) "key3" 3) "key1" 数据恢复成功!
3. Redis的持久化之AOF方式
AOF方式:将以日志,记录每一个操作 优势:安全性相对RDB方式高很多; 劣势:效率相对RDB方式低很多; 修改配置文件 [root@#localhost redis]# vi redis.conf appendonly no改为yes,默认关闭aof方式,yes是开启 appendfilename "appendonly.aof" 默认的aof文件名 三种同步策略:修改成always appendfsync always 只要发生修改,立即同步(推荐实用,安全性最高) # appendfsync everysec 每秒同步一次 # appendfsync no 不同步 保存退出 启动redis,确保keys是空 [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# bin/redis-cli [root@#localhost redis]# ll 总用量 56 -rw-r--r--. 1 root root 131 2月 28 03:33 appendonly.aof drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 123 2月 28 03:33 dump.rdb -rw-r--r--. 1 root root 46698 2月 28 03:30 redis.conf [root@#localhost redis]# rm -rf dump.rdb [root@#localhost redis]# rm -rf appendonly.aof 127.0.0.1:6379> keys * (empty list or set) 重新启动redis,增加测试用keys [root@#localhost redis]# bin/redis-cli shutdown [root@#localhost redis]# ps -ef | grep -i redis root 7454 7281 0 03:25 pts/0 00:00:00 grep --color=auto -i redis [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# bin/redis-cli 127.0.0.1:6379> keys * (empty list or set) 127.0.0.1:6379> quit [root@#localhost redis]# ll 总用量 48 -rw-r--r--. 1 root root 0 2月 28 03:35 appendonly.aof drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 46698 2月 28 03:30 redis.conf 127.0.0.1:6379> set name1 zhangsan OK 127.0.0.1:6379> set name2 lisi OK 127.0.0.1:6379> set name3 wangwu OK 127.0.0.1:6379> shutdown nosave not connected> exit [root@#localhost redis]# ll 总用量 52 -rw-r--r--. 1 root root 131 2月 28 03:41 appendonly.aof drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 46698 2月 28 03:30 redis.conf 把aof文件剪切到/root/,重启没有keys [root@#localhost redis]# mv appendonly.aof /root/ [root@#localhost redis]# ll 总用量 48 drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 46698 2月 28 03:30 redis.conf [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# bin/redis-cli 127.0.0.1:6379> keys * (empty list or set) 将aof复制回来 [root@#localhost redis]# cp /root/appendonly.aof /usr/local/redis/ cp:是否覆盖"/usr/local/redis/appendonly.aof"? y [root@#localhost redis]# ll 总用量 52 -rw-r--r--. 1 root root 131 2月 28 03:43 appendonly.aof drwxr-xr-x. 2 root root 134 2月 27 03:45 bin -rw-r--r--. 1 root root 46698 2月 28 03:30 redis.conf [root@#localhost redis]# bin/redis-cli shutdown [root@#localhost redis]# ps -ef | grep -i redis root 7533 7281 0 03:45 pts/0 00:00:00 grep --color=auto -i redis [root@#localhost redis]# bin/redis-server redis.conf [root@#localhost redis]# bin/redis-cli 127.0.0.1:6379> keys * 1) "name3" 2) "name1" 3) "name2" 备份恢复成功!
相关推荐
Redis 有两种持久化方案,RDB (Redis DataBase)和 AOF (Append Only File)。如果你想快速了解和使用RDB和AOF,可以直接跳到文章底部看总结。本章节通过配置文件,触发快照的方式,恢复数据的操作,命令操作演示...
RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘。 也是默认的持久化方式,这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。
RDB是Redis内存到硬盘的快照,用于redis持久化,创建RDB二进制文件,将存储在内存中的数据,持久化的放到硬盘中,当我们需要这些数据的时候,启动载入RDB文件,数据将会被存入内存中,其实RDB就是一种快照的方式持久...
Redis持久化 - RDB和AOF
本文主要针对Redis 有两种持久化方案RDB和AOF做了详细的分析,希望我们整理的内容能够帮助大家对这个两种方案有更加深入的理解。 Redis 有两种持久化方案,RDB (Redis DataBase)和 AOF (Append Only File)。如果...
两种持久化方案:RDB 和 AOF 包含:两钟方案各自的优缺点、如何选择持久化方式、RDB 持久化设置、AOF持久化设置、AOF与RDB之间的相互影响、备份Redis 数据、灾难恢复、Redis 的数据回写机制、灾难恢复模拟
部署安装Redis及RDB、AOF持久化验证.md
redis主从复制 RDB/AOF持久化 数据类型-附件资源
java学习-Redis的安装/连接/Redis中的五种数据累心的基本操作/Redis的持久化方案-Rdb+AOF
AOF 持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以 redis 协议追加保存每次写的操作到文件末尾,redis 还能对 AOF 文件进行后台重写,使得 AOF 文件的体积...
很全面的大数据公开课,课件+视频+代码
}} Redis持久化策略说明Redis中的数据都在内存中,如果断电宕机则内存数据丢失.其中数据应该持久化保存.不允许丢失.持久化策略:RDB模式AOF模式Re
17.聊聊redis持久化 – 如何选择RDB和AOF 18.聊聊主从 – 用法 19.聊聊主从 – 同步原理 20.聊聊redis的事务处理 21.教你看懂redis配置 – 简介 22.教你看懂redis配置 -通用 23.教你看懂redis配置 – 快照 24.教你看...
Redis的持久化存储提供两种方式:RDB与AOF。RDB是默认配置。默认是关闭AOF模式的,AOF需要手动开启 RDB(Redis DataBase):在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时...
目录 介绍 rdb rdb原理 rdb触发条件 ...rdb实现持久化主要是将当前进程中的数据生成快照保存到硬盘上,在重启的时候读取硬盘上的数据(如果同时配置了aof,将会先执行aof策略,因为aof的实时性比较高
首先,我们探讨了Redis的两种持久化方式:RDB和AOF。RDB通过定期生成数据快照来实现数据的持久化,而AOF则记录每个写操作,提供更强的数据安全性。然而,AOF由于记录每次操作,可能会导致文件体积较大,因此Redis...
Redis 有两种持久化方案,RDB (Redis DataBase)和 AOF (Append Only File)。如果你想快速了解和使用RDB和AOF,可以直接跳到文章底部看总结。本章节通过配置文件,触发快照的方式,恢复数据的操作,命令操作演示...