持久化:就是把內存中的數據保存到磁盤
1.Redis為什么要有持久化?
由於Redis是一個基於內存的數據庫,因此數據容易丟失,為了解決數據丟失的問題,於是Redis就設計了持久化
2.Redis的持久的方式有哪些?
有兩個,分別是rdb和aof的持久化方式
3.分別介紹一下Redis的持久化方式的機制
rdb持久化:Redis為我們提供了一個rdb的持久化方式具體每隔一定時間,或者當key的改變達到一定的數量的時候,就會自動往磁盤保存一次
1 save 900 1(900秒后1個key改變) 2 save 300 10(300秒后19個key改變) 3 save 60 10000(60秒后10000個key改變)(save是或者的關系)
aof持久化:Redis還為我們提供了一個aof的持久化方式,這種方式是通過記錄用戶的操作過程(用戶每執行一次命令,就會被Redis記錄在XXX.aof文件里,如果突然斷電了,Redis的數據就會通過重新讀取並執行XXX.aof里的命令記錄來恢復數據)來恢復數據
4.兩種Redis持久化方式的優缺點
都是為了防止數據丟失
rdb:假如三種方式沒有一種被滿足,觸發不了保存,突然斷電,那就會丟失數據
aof:為了解決rdb的弊端,就有了aof的持久化,始終在一個文件里保存記錄,但aof的持久化隨着時間的推移數據量會越來越大,占用很大的空間