Redis四:中flushDB和flushAll的區別


redis中,flushDBflushAll 都是清空當前數據庫的操作,但是兩者有很大的區別:

1、flushAll 清空數據庫並執行持久化操作,也就是RDB文件會發生改變,變成76個字節大小(初始狀態下為76字節),所以執行flushAll之后數據庫真正意義上清空了。

2、flushDB 清空數據庫,但是不執行持久化操作,也就是說RDB文件不發生改變.而redis的數據是從RDB快照文件中讀取加載到內存的,所以在flushDB之后,如果想恢復數據庫,則可以直接killredis-server進程,然后重新啟動服務,這樣redis重新讀取RDB文件,數據恢復到flushDB操作之前的狀態。


注意:要直接killredis-server服務,因為shutdown操作會觸發持久化。

 

lsof -i:6379 命令查看redis-server的進程號,然后kill即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM