redis备份与恢复
redis备份
127.0.0.1:6379> save
OK
127.0.0.1:6379> config get dir
1) "dir"
2) "/"
redis安装目录为根目录,根目录中出现了一个文件,dump.rdb
127.0.0.1:6379> bgsave
Background saving started
SAVE和BGSAVE命令的区别在于:SAVE命令是阻塞主进程,save操作完成之后,主进程才开始工作,客户端可以连接;BGSAVE命令是fork一个专门save的子进程,此操作不会影响主进程。
把dump.rdb
放到启动redis的目录下,重启redis即可恢复数据。
# sudo /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
6115:C 09 May 22:15:18.406 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
6115:C 09 May 22:15:18.406 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=6115, just started
6115:C 09 May 22:15:18.406 # Configuration loaded
必须在特定的目录下启动,至于选择什么配置文件,不重要!
下面是具体的操作:
1、搜索redis
# find / -name redis-cli
/opt/www/redis-3.2.9/src/redis-cli
/usr/local/bin/redis-cli
2、搜索备份所在
# find / -name dump.rdb
/opt/www/redis-3.2.9/dump.rdb
/root/dump.rdb
3、甄别哪个是真的备份
通过大小,日期等
4、搜索配置文件
# find / -name 'redis.conf'
/opt/www/redis-3.2.9/redis.conf
5、redis关掉
# redis-cli
127.0.0.1:6379> shutdown
not connected> exit
6、进入备份文件目录,进行重启
# ./src/redis-server /opt/www/redis-3.2.9/redis.conf
这个时候,就成功的找回了备份redis数据。