redis的RDB和aof持久化配置

rdb配置
  • rdb的配置能夠在redis的配置文件redis.conf中進行配置(注意: 要用實際用到的redis配置文件配置, 不要修改錯位置):redis

    save 900 1
    save 300 10
    save 60 10000

    以上就是rdb在配置文件中的樣子, 他表示每一個隔900秒有一條數據發生變動即進行保存, 以此類推下面的也是這個意思;app

  • rdb的每次生成一個新的快照, 都會講舊的快照刪掉;
aof配置
  • aof默認是關閉的, 若是想要打開, 也是在redis的配置文件redis.conf中進行配置, 若是想要打開, 則能夠在配置文件中查找appendonly, 修改成以下:
    appendonly yes
    生產環境下通常都是打開的;
  • aof刷新的時間間隔配置appendfsync, 有三種配置方式:性能

    • always: 每一條都寫入磁盤, 對數據進行保存, 對性能影響較大;
    • everysec: 每秒寫入磁盤一次, 對性能影響較小;
    • no: 不進行設置, 讓操做系統自動保存;
  • aof的rewrite過程:操作系統

    • redis建立一個子進程;
    • 子進程根據當前redis的數據, 從新寫一份aof文件;
    • 與此同時, redis的主進程繼續接受寫入的數據並寫入內存中的日誌, 同時新的日誌也會追加到舊的aof文件中;
    • 子進程寫完新的aof文件以後, redis會將內存中的新數據的日誌追加到新的aof文件中;
    • 最後用新的aof文件替換舊的aof文件;
  • rewrite操做的配置
    auto-aof-rewrite-percentage 100
    auto-aof-rewrite-min-size 64mb第一個表示: aof文件的容量超過原來aof文件容量一倍的時候, 進行aof文件的重寫;第二個表示: 執行aof重寫時, aof文件的最小容量;
相關文章
相關標籤/搜索