redis采用rdb方式导出导入数据

1. 原redis服务器

复制代码
登录redis服务器,然后通过redis的客户端进行连接redis,命令如下:
[root@ ~]# redis-cli
127.0.0.1:6379> 
注释:如果没有将redis-cli安装成服务,可以进入redis的src目录下进行客户端的连接

连接成功后,我们可以通过下面的命令找到redis的文件存放目录
127.0.0.1:6379> CONFIG GET dir
1) "dir"
2) "/var/lib/redis"
127.0.0.1:6379> 
注释:在/var/lib/redis下

下面我们查看一下redis数据备份的触发条件,查看redis配置文件/ect/redis.conf ,可以看到redis数据备份的触发条件为:
save 900 1     #900秒内至少有1个key被更改,进行备份
save 300 10    #300秒内至少有300个key被更改,进行备份
save 60 10000  #60秒内至少有10000个key被更改,进行备份

我们可以通过 save的方式直接对此时的数据进行备份,命令如下:
[root@ ~]# redis-cli
127.0.0.1:6379> save   #数据备份
127.0.0.1:6379>  #退出
这个时候我们可以在redis的文件存放目录/var/lib/redis目录下看到刚刚备份的dump.rdb文件
复制代码

 

2、目标服务器

首先:登录目标redis服务器,停止redis服务:
service redis stop  #停止redis服务

 然后:进入redis的文件存放目录/var/lib/redis,把刚刚备份的dump.rdb文件替换该目录下的dump.rdb文件 (建议先备份当前目录下的dump.rdb文件),   重启redis服务,redis数据迁移完成  

  service redis start #启动redis服务 

   

 注意事项和问题:

    问题:  重新启动后刚刚拷贝过来的dump.rdb会变成0K,整个redis为空数据

        答:一定需要停止redis服务再拷贝,然后重启

    问题:  启动出现Invalid LZF compressed string

        答:使用使用命令redis-check-dump检查dump.rdb是否有问题,如有问题出现重新拷贝dump.rdb文件

   注意:还是启动不了,使用redis-server 控制台查看启动过程

            

posted @ 2022-08-08 09:34  誓鼎  阅读(3400)  评论(0编辑  收藏  举报