您好,登錄后才能下訂單哦!
何為Redis?
Redis是內存中的鍵值緩存和存儲(即數據庫),也可以永久保存到磁盤。在本文中,你將了解,如何在Centos 7上備份還原您的redis數據庫。
備份還原說明
默認情況下,Redis數據將保存到磁盤中的.rdb文件中,該文件是Redis數據集的時間點快照。快照是按照指定的時間間隔進行的,所以對于備份來說是完美的。
1.數據備份篇
在Centos 7和其他Linux發行版中,Redis數據庫目錄默認是/var/lib/redis。但是,如果您更改了redis存儲位置,則可以通過鍵入以下命令查找:
[root@renwolecom ~]# find / -name *rdb
使用redis-cli管理工具進入數據庫:
[root@renwolecom ~]# redis-cli
由于大部分數據都運行在內存中,redis只會每隔一段時間保存一次,為獲取最新副本,請執行以下命令:
10.10.204.64:6379> save OK (1.02s)
另外,如果Redis設置了用戶認證,就需要先驗證,再保存,例如:
10.10.204.64:6379> auth RenwoleQxl5qpKHrh9khuTW 10.10.204.64:6379> save
之后進行備份即可,例如:
[root@renwolecom ~]# cp /var/lib/redis/dump.rdb /apps/redis-backup-20180129
2.數據還原篇
恢復備份需要您使用恢復文件替換現有的Redis數據庫文件。為保證原始數據文件不被破壞,我們建議盡可能恢復到新的Redis服務器。
停止Redis數據庫,一旦停止,Redis數據庫處于脫機狀態。
[root@renwolecom ~]# systemctl stop redis
如果恢復到原始Redis服務器,請重命名當前數據文件,之后再進行恢復:
[root@renwolecom ~]# mv /var/lib/redis/dump.rdb /var/lib/redis/dump.rdb.old [root@renwolecom ~]# cp -p /apps/redis-backup-20180129/dump.rdb /var/lib/redis/dump.rdb
設置dump.rdb文件權限,拷貝過來的數據文件,可能不具備Redis用戶及讀取權限,需要手動賦予:
[root@renwolecom ~]# chown redis:redis /var/lib/redis/dump.rdb [root@renwolecom ~]# chmod 660 /var/lib/redis/dump.rdb
啟動redis
[root@renwolecom ~]# systemctl start redis
大功告成!現在你可以登錄redis核實數據了。
注意說明:
根據需求,關閉AOF,AOF跟蹤每個寫操作到Redis數據庫。由于我們試圖從時間點備份中恢復,所以我們不希望Redis重新創建存儲在其AOF文件中的操作。
是否開啟AOF可以通過查看文件獲悉:
[root@renwolecom ~]# ls /var/lib/redis/
如果看到.aof后綴的文件,說明你啟用了AOF。
重命名.aof文件,
[root@renwolecom ~]# mv /var/lib/redis/*.aof /var/lib/redis/appendonly.aof.old
如果有多個.aof文件,請單獨命名。
編輯你的Redis配置文件暫時關閉AOF:
[root@renwolecom ~]# vim /etc/redis/redis.conf appendonly no
如果備份期間有任何疑問,歡迎留言。在此也非常感謝大家對億速云網站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。