redis備份恢復

lsq_008發表於2016-04-27
#######################備份資料##################################
1.獲取資料檔案目錄
config get dir

cat /etc/redis/redis.conf |grep '^dir '|cut -d' ' -f2

2.資料重新整理到磁碟

redis-cli bgsave

3.備份資料

cp /var/lib/redis/dump.rdb /backup/redis/dump.$(date +%Y%m%d%H%M).rdb

#######################恢復資料##################################

4.確認aof是否開啟
cat /etc/redis/redis.conf |grep 'appendonly '|cut -d' ' -f2

config get appendonly

#####如果appendonly為no:
(1)停止redis
/etc/init.d/redis-server stop
(2)重新命名原來的資料檔案
mv /var/lib/redis/dump.rdb /var/lib/redis/dump.rdb.old
(3)將備份的檔案複製到data目錄
cp /backup/dump.rdb /var/lib/redis/
(4)檢查確認檔案許可權是否正確
ls -l  /var/lib/redis/dump.rdb
(5)啟動redis
/etc/init.d/redis-server start

###如果appendonly 為yes:
(1)停止redis
/etc/init.d/redis-server stop
cd /var/lib/redis/
(2)將原來的檔案改名
mv dump.rdb dump.rdb.old
mv appendonly.aof appendonly.aof.old
(3)將備份的檔案恢復,如果許可權不一致,需要修改許可權
cp /backup/dump.rdb /var/lib/redis/
(4)修改配置檔案,
appendonly no
(5)啟動redis server
/etc/init.d/redis-server start
redis-cli BGREWRITEAOF
(6)檢查程式Check the progress (0 - done, 1 - not yet)
redis-cli info | grep aof_rewrite_in_progress
(7)停止redis server
/etc/init.d/redis-server stop
(8)修改配置檔案
appendonly yes
(9)啟動redis server
/etc/init.d/redis-server start

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10972173/viewspace-2089116/,如需轉載,請註明出處,否則將追究法律責任。

相關文章