Redis提供了兩種自定義持久化的方法:RDB和AOF。
RDB(Redis Database)是一種快照持久化方式,通過將Redis在某個(gè)時(shí)間點(diǎn)的數(shù)據(jù)狀態(tài)保存到磁盤上的RDB文件中??梢允謩?dòng)執(zhí)行SAVE命令或者配置定時(shí)自動(dòng)執(zhí)行SAVE命令來(lái)觸發(fā)RDB持久化操作。RDB文件是二進(jìn)制的,并且是緊湊的,適合用于備份和恢復(fù)數(shù)據(jù)。RDB持久化方式比AOF方式更適合用于快速恢復(fù)大規(guī)模數(shù)據(jù)。
AOF(Append-Only File)是一種日志持久化方式,通過將Redis的所有操作記錄追加寫入到AOF文件中。AOF文件是文本格式的,記錄了Redis服務(wù)器接收到的所有寫操作,以及讀操作當(dāng)使用no-appendfsync-on-rewrite配置時(shí)??梢酝ㄟ^配置的方式來(lái)設(shè)置AOF的刷新頻率和策略。AOF持久化方式更加安全,但文件體積會(huì)比RDB方式大,恢復(fù)速度相對(duì)較慢。
除了以上兩種常見的持久化方式,Redis還提供了混合持久化方式,可以同時(shí)使用RDB和AOF來(lái)進(jìn)行數(shù)據(jù)持久化??梢酝ㄟ^配置的方式來(lái)設(shè)置混合持久化的方式和策略,以滿足不同的業(yè)務(wù)需求。