zoukankan      html  css  js  c++  java
  • Redis的持久化之AOF方式

    原文:http://blog.java1234.com/blog/articles/324.html

    AOF方式:将以日志,记录每一个操作

     

    优势:安全性相对RDB方式高很多;

    劣势:效率相对RDB方式低很多;

     

    配置:

    [root@localhost redis]# vi redis.conf 

     

    编辑redis.conf

     

    往下拉 找到:

    QQ鎴�浘20170718094504.jpg

     

    appendonly no默认关闭aof方式 我们修改成yes 就开启

    下面那个是默认的aof文件名

     

    再往下拉:

    QQ鎴�浘20170718094518.jpg

     

    这里是三种同步策略:

    always 是 只要发生修改,立即同步 (推荐实用 安全性最高)

    everysec 是 每秒同步一次

    no是不同步 

     

    我们修改成always

     

    然后保存 退出;

     

    我们重新启动redis,然后随便加几个key

     

    QQ鎴�浘20170718103620.jpg

     

    这里就有一个appendonly.aof文件;

    aof方式恢复数据

    我们先重置数据

    [root@localhost redis]# rm -rf dump.rdb 

    [root@localhost redis]# ll

    总用量 48

    drwxr-xr-x. 2 root root   134 7月  18 11:05 bin

    -rw-r--r--. 1 root root 46698 7月  18 12:14 redis.conf

    启动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> set n1 1

    OK

    127.0.0.1:6379> set n2 2

    OK

    127.0.0.1:6379> set n3 3

    OK

    127.0.0.1:6379> shutdown nosave

    not connected> exit

    [root@localhost redis]# ll

    总用量 52

    -rw-r--r--. 1 root root   107 7月  18 12:17 appendonly.aof

    drwxr-xr-x. 2 root root   134 7月  18 11:05 bin

    -rw-r--r--. 1 root root 46698 7月  18 12:14 redis.conf

    [root@localhost redis]# 

    我们把aof文件剪切到其他地方去 然后启动试下

    [root@localhost redis]# mv appendonly.aof /root/

    [root@localhost redis]# ll

    总用量 48

    drwxr-xr-x. 2 root root   134 7月  18 11:05 bin

    -rw-r--r--. 1 root root 46698 7月  18 12:14 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   107 7月  18 12:22 appendonly.aof

    drwxr-xr-x. 2 root root   134 7月  18 11:05 bin

    -rw-r--r--. 1 root root 46698 7月  18 12:14 redis.conf

    [root@localhost redis]# ./bin/redis-server ./redis.conf 

    [root@localhost redis]# ./bin/redis-cli

    127.0.0.1:6379> keys *

    1) "n1"

    2) "n3"

    3) "n2"

    我们发现 以及有数据了

    小结: 我们平时可以把aof文件定期备份 然后需要的时候 拷贝到redis下 重启即可;

  • 相关阅读:
    行转列
    multipath 安装配置
    网卡绑定
    numa对MySQL多实例性能影响
    Fatal NI connect error 12170
    REVOKE DBA权限要小心
    Oracle 数据库整理表碎片
    listagg 函数
    10046 事件补充
    tkprof 解释
  • 原文地址:https://www.cnblogs.com/gyadmin/p/8251990.html
Copyright © 2011-2022 走看看