數據是如何存儲的?、
Redis中是把數據保存到內存中的,但是它也會定期的把數據寫會到硬盤中。
Redis保存數據有兩種方式:
- 快照模式(Snapshot)
它支持兩種快照模式:
- 定時快照,即按一定時間將內存中的數據保存到磁盤上。
- 定量快照,即數據變化一定次數后將數據保存到磁盤上。
你也可以結合這兩種方式,比如變化1000次,距離上次保存時間60秒以上才保存數據。
- 寫模式(Append Only File)
這種模式下Redis會把所以修改數據的命令(如Update,Set)等保存到一個只能追加的ASAP文件中,當Redis重啟時,它會把這個文件里的命令重新執行一遍。
數據保存到哪里?
數據是保存到一個數據文件中的,具體文件名要看Redis的配置文件,即Redis.conf
config get dbfilename (返回 dump.rdb)
可以使用 config set dbfilename new (修改你要保存數據的文件)
數據如何到導出?
Redis寫數據時先寫到一個temp文件中,然后再把temp文件重命名為預定義的文件,所以即使Redis在運行,也可以直接用cp命令拷貝這個文件。
cp /usr/loca/redis/demo.rdb /home/greenerycn/db/demo.rdb