redis--永続化戦略

4.2.2永続モード
(1)RDBの方法
1. RDBの方法は何ですか?
Redisのデータベース(RDB)、指定した時間間隔内にディスクに書き込まれたデータセットのメモリのスナップショットで、数
時間データ復旧スナップショットファイルを直接再読み込みメモリ。
RDBは、ある時点でのデータセット(すべてのデータ)を保存します。バイナリファイルでは、一つだけのストレージがある
ファイル。デフォルトはdump.rdbです。RDB技術は、あなたが、その日、最後の時間を節約することができ、バックアップのために理想的に適している
全体の月のデータを。保存データファイルが別のプロセスで書かれている、のRedisの通常の使用には影響しません。回復のRDB番号
他のAOF速度よりもデータが速いです。

2.どのように達成するために?
持続性のデータRDBの道を、あなただけredis.confファイルを設定することができ、デフォルトの設定が有効になっています。
設定ファイルの検索スナップショットのredis.conf、RDBの上のコメントの開始と終了の間に見える
構成手順。スナップショットの家では、3つのがあります。
①:RDBは、スナップショットファイルを生成し、実行時間の戦略を設定します。
それは「N秒のデータセットは、少なくともMキーの変更を持っている」ときに設定するRedisのは、条件が満たされ、
自動的にデータセットを保存します。
コンフィギュレーション・フォーマット:保存<秒> <変更点>
900 1保存
保存300 10
セーブ60万
dbfilename:②をRDBには、ファイル名、デフォルトのファイル名dump.rdbを提供
③:DIRを:RDBは、ファイルの保存場所を指定し、デフォルトはい。 /カレントディレクトリの
設定手順:
①を:ビューのps -ef | grepをするのRedis、Redisのサービスが停止し、起動する場合。


②:修正、実行のcp redis.confのbak_redis.conf前にバックアップ、ファイルを変更redis.conf

デフォルトのRDBファイルで有効になって見ます

③:編集redis.confの増加は、設定を保存し、ファイル名を変更します。Vimのredis.conf

 

内容を変更します。

 

元のデフォルトdump.rdb、削除、修正redis.confは、Redisのを再起動
④:20秒、3つのキーの値の変化に

⑤:生成されたファイルのRDBを参照してください

3. 总结
优点:由于存储的是数据快照文件,恢复数据很方便,也比较快
缺点:
1)会丢失最后一次快照以后更改的数据。如果你的应用能容忍一定数据的丢失,那么
使用rdb是不错的选择;如果你不能容忍一定数据的丢失,使用 rdb 就不是一个很好的选择。
2)由于需要经常操作磁盘,RDB 会分出一个子进程。如果你的 redis 数据库很大的话,
子进程占用比较多的时间,并且可能会影响 Redis 暂停服务一段时间(millisecond 级别),
如果你的数据库超级大并且你的服务器 CPU 比较弱,有可能是会达到一秒。

 

 

2 ) AOF 方式
1. 什么是 AOF 方式
Append-only File(AOF),Redis 每次接收到一条改变数据的命令时,它将把该命令写到
一个 AOF 文件中(只记录写操作,读操作不记录),当 Redis 重启时,它通过执行 AOF 文件
中所有的命令来恢复数据。
2. 如何实现
AOF 方式的数据持久化,仅需在 redis.conf 文件中配置即可
配置项:
①:appendonly:默认是 no,改成 yes 即开启了 aof 持久化
②:appendfilename:指定 AOF 文件名,默认文件名为 appendonly.aof
③:dir :指定 RDB 和 AOF 文件存放的目录,默认是 ./
④:appendfsync:配置向 aof 文件写命令数据的策略:
no:不主动进行同步操作,而是完全交由操作系统来做(即每 30 秒一次),比较快但不
是很安全。
always:每次执行写入都会执行同步,慢一些但是比较安全。
everysec:每秒执行一次同步操作,比较平衡,介于速度和安全之间。这是默认项。
⑤:auto-aof-rewrite-min-size:允许重写的最小 AOF 文件大小,默认是 64M 。当 aof 文件大
于 64M 时,开始整理 aof 文件,去掉无用的操作命令。缩小 aop 文件。
例 1:
①:停止运行的 redis ,备份要修改的 redis.conf
②:查看 redis 安装目录/src 下有无 .aof 文件。默认是在 redis 的当前目录

③:编辑 redis.conf
设置 appendonly 为 yes 即可。

查看 appendfsync 的当前策略。
查看 appendfilname 的文件名称

 

 

④:在 redis 客户端执行写入命令

 

⑤查看 aof 文件

 

 

(3 ) 总结
1)append-only 文件是另一个可以提供完全数据保障的方案;
2)AOF 文件会在操作过程中变得越来越大。比如,如果你做一百次加法计算,最后你只会
在数据库里面得到最终的数值,但是在你的 AOF 里面会存在 100 次记录,其中 99 条记
录对最终的结果是无用的;但 Redis 支持在不影响服务的前提下在后台重构 AOF 文件,让
文件得以整理变小
3)可以同时使用这两种方式,redis 默认优先加载 aof 文件(aof 数据最完整);

おすすめ

転載: www.cnblogs.com/Tpf386/p/11229226.html