最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

redis的兩種持久化方式RDB和AOF解讀

 更新時間:2025年03月04日 09:08:57   作者:L丶小先生  
Redis提供了RDB和AOF兩種持久化方式,RDB是快照持久化,通過配置文件中的save指令開啟和配置,可以設置觸發(fā)快照的條件,AOF是日志持久化,每次寫操作都會追加到AOF文件中,并可以通過配置文件設置持久化頻率和重寫策略,RDB和AOF可以結合使用,以提高數據的安全性和恢復效率

redis兩種持久化方式RDB和AOF

Redis 提供了兩種主要的持久化方式:RDB(Redis Database)和 AOF(Append Only File)。

默認情況下,Redis 沒有開啟任何持久化方式,但可以在配置文件(redis.conf)中啟用它們。

RDB持久化

RDB 是一種快照持久化方式,它會在指定的時間間隔內生成內存數據的快照并保存到磁盤上的一個 RDB 文件中,RDB 快照(Snapshot)機制在每次觸發(fā)快照保存時,都會生成一個新的 RDB 文件,這個新文件會覆蓋之前保存的 RDB 文件。

以下是 RDB 快照機制的一些關鍵點:

1、開啟/禁用方式

在配置文件的SNAPSHOTTING(快照)模塊中設置save參數即可開啟,相應的禁用RDB持久化只需要不設置save指令或給save傳入一個空字符串即可禁用。

2、觸發(fā)機制

  • 達到配置文件中save指令指定的觸發(fā)條件
  • 通過SAVEBGSAVE(異步執(zhí)行) 命令觸發(fā)

3、參數配置

#900秒內有一個key發(fā)生變化觸發(fā)快照操作
save 900 1
#300秒內有10個key發(fā)生變化觸發(fā)快照操作
save 300 10
# 60秒內有10000個key發(fā)生變化觸發(fā)快照操作
save 60 10000

# 如果配置成no,表示你不在乎數據不一致或者有其他的手段發(fā)現和控制這種不一致,那么在快照寫入失敗時,也能確保redis繼續(xù)接受新的寫請求
stop-writes-on-bgsave-error yes

#rdb快照是否進行壓縮,但是會消耗cpu
rdbcompression yes

# 在存儲快照后,還可以讓redis使用CRC64算法來進行數據校驗,但是這樣做會增加大約10%的性能消耗,如果希望獲取到最大的性能提升,可以關閉此功能
rdbchecksum yes

# rdb快照文件名
dbfilename dump.rdb

#存儲位置,默認是當前路徑
dir ./

4、數據安全性

  • 由于 RDB 文件會覆蓋舊文件,因此在故障恢復時,你只能恢復到最后一次成功快照的時間點的數據狀態(tài)。
  • 為了提高數據安全性,通常建議結合使用 AOF(Append Only File)持久化,這樣即使 RDB 文件丟失,AOF 也可以提供更細粒度的數據恢復。

AOF持久化

AOF 是一種日志持久化方式,它會記錄每次寫操作并追加到 AOF 文件中,Redis的AOF文件在重寫(rewrite)過程中會被覆蓋。

AOF重寫的目的是為了減少AOF文件的大小,并去除那些冗余的、不再必要的命令,使得該文件只包含恢復當前數據集所需的最小命令集。

在重寫工作完成后,Redis會將新的AOF文件覆蓋現有的AOF文件,這就相當于壓縮了AOF文件,使得AOF文件體積變小了。

以下是 AOF日志機制的一些關鍵點:

1、開啟/禁用方式

在配置文件的APPEND ONLY MODE模塊中把appendonly參數設置為yes即可開啟,設置為no即禁用。

2、觸發(fā)機制

每次寫操作都會追加到 AOF 文件中。

3、參數配置

#開啟aof持久化策略,將接收到的每次寫操作請求都追加到aof文件中,在redis重啟時,會加載aof文件,優(yōu)先級比rdb高
appendonly no

# aof文件名
appendfilename "appendonly.aof"

# 設置aof持久化頻率
# 有三種選擇
# always 每次寫都強制調用fsync,這種模式下,redis會相對較慢,但數據最安全
# everysec 每秒啟用一次fsync
# no 不調用fsync()。而是讓操作系統(tǒng)自行決定sync的時間。這種模式下,redis的性能會最快
appendfsync everysec

# 設置當redis在rewrite的時候,是否允許appendsync。因為redis進程在進行AOF重寫的時候,fsync()在主進程中的調用會被阻止,也就是redis的持久化功能暫時失效。默認為no,這樣能保證數據安全
no-appendfsync-on-rewrite no

# 設置自動進行AOF重寫的基準值,也就是重寫啟動時的AOF文件大小,假如redis自啟動至今還沒有進行過重寫,那么啟動時aof文件的大小會被作為基準值。這個基準值會和當前的aof大小進行比較。如果當前aof大小超出所設置的增長比例,則會觸發(fā)重寫。如果設置auto-aof-rewrite-percentage為0,則會關閉此重寫功能
auto-aof-rewrite-percentage 100
# 設置一個最小大小,是為了防止在aof很小時就觸發(fā)重寫
auto-aof-rewrite-min-size 64mb

4、數據安全性

AOF文件會記錄從上一次重寫到現在的所有寫操作,redis故障恢復后會重新執(zhí)行這些寫操作指令,設置了過期時間的key也會被重新寫入并重新設置過期時間,從而恢復到故障前的數據狀態(tài)

5、補充

AOF文件重寫可以簡單的理解為redis會自動的根據重寫機制配置去定時的清理那些冗余的、不再必要的命令,僅保留當前使用中的數據命令,由此可以減少AOF文件的體積,減少磁盤空間使用率以及提高數據恢復的速度。

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Redis數據刪除與淘汰策略從原理到實戰(zhàn)指南

    Redis數據刪除與淘汰策略從原理到實戰(zhàn)指南

    本文講解了Redis的數據刪除與淘汰策略,從基礎概念鋪墊到策略細節(jié)拆解,再到底層原理和實戰(zhàn)配置,重點介紹了三種刪除策略(惰性刪除、定期刪除、主動刪除)和六種常用淘汰策略(allkeys-lru、volatile-lru、allkeys-lfu、volatile-lfu等),感興趣的朋友跟隨小編一起看看吧
    2026-04-04
  • Redis3.2.6配置文件詳細中文說明

    Redis3.2.6配置文件詳細中文說明

    本文為大家分享了Redis3.2.6配置文件詳細中文說明,非常詳細收藏起來以后工作有用
    2018-10-10
  • Redis搶單預熱的實現示例

    Redis搶單預熱的實現示例

    本文主要介紹了Redis搶單預熱的實現示例,以應對搶單活動帶來的高并發(fā)訪問壓力,具有一定的參考價值,感興趣的可以了解一下
    2023-11-11
  • redis批量刪除namespace下的數據的實現步驟

    redis批量刪除namespace下的數據的實現步驟

    在開發(fā)中為了更好的管理數據,對redis進行了分組存儲操作,在存值時加了命名空間來實現,本文就來介紹一下redis批量刪除namespace下的數據的實現步驟,感興趣的可以了解一下
    2025-12-12
  • 完美解決Redis在雙擊redis-server.exe出現閃退問題

    完美解決Redis在雙擊redis-server.exe出現閃退問題

    本文主要介紹了完美解決Redis在雙擊redis-server.exe出現閃退問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • Redis解決緩存擊穿問題的兩種方法

    Redis解決緩存擊穿問題的兩種方法

    緩存擊穿問題也叫熱點Key問題,就是?個被高并發(fā)訪問并且緩存重建業(yè)務較復雜的key突然失效了,無數的請求訪問會在瞬間給數據庫帶來巨大的沖擊,本文給大家介紹了Redis解決緩存擊穿問題的兩種方法,需要的朋友可以參考下
    2025-03-03
  • redis數據的兩種持久化方式對比

    redis數據的兩種持久化方式對比

    Redis是我們開發(fā)中常用的數據庫,今天和大家分享的就是redis持久化的2種方式:RDB(Redis DataBase)和AOF(Apend Only File),希望對大家學習redis有幫助,一起來看看吧。
    2017-08-08
  • Redis 常用命令之基礎、進階與場景化實戰(zhàn)案例

    Redis 常用命令之基礎、進階與場景化實戰(zhàn)案例

    Redis常用命令全解析,涵蓋基礎、進階和場景化實戰(zhàn),包括字符串、哈希、列表、集合、有序集合等數據類型,以及發(fā)布訂閱、分布式鎖、事務等高級功能,本文給大家介紹Redis常用命令之基礎、進階與場景化實戰(zhàn)案例,感興趣的朋友一起看看吧
    2026-01-01
  • redis中的數據結構和編碼詳解

    redis中的數據結構和編碼詳解

    本文主要和大家分享幾種Redis數據結構詳解,希望文中的案例和代碼,能幫助到大家。
    2020-03-03
  • Redis實現好友關注的示例代碼

    Redis實現好友關注的示例代碼

    本文主要介紹了Redis實現好友關注的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01

最新評論

资中县| 犍为县| 黔西县| 新宁县| 苏尼特左旗| 双峰县| 涞源县| 霍林郭勒市| 孟州市| 泸西县| 交城县| 都匀市| 正宁县| 四子王旗| 饶阳县| 武胜县| 昌吉市| 策勒县| 台北市| 泸定县| 平顶山市| 西华县| 邵武市| 读书| 班戈县| 鸡泽县| 沁源县| 宁化县| 雷波县| 安国市| 出国| 常德市| 九寨沟县| 保康县| 武隆县| 五家渠市| 阳朔县| 眉山市| 喀喇沁旗| 嘉定区| 临夏县|