redis备份数据有两种方法
一种是服务端备份,配置数据RDB文件的路径,然后在需要备份的时候,拷贝RDB文件进行备份。然后需要做数据恢复的时候,再登录目标的redis服务器,将RDB文件替换。这种方法的缺点RDB文件的格式跟redis版本的关系比较大,兼容性比较差。而且是需要登录两台redis服务器做备份,操作比较复杂,而且每次都是整个文件替换,容易丢失新数据,操作不当也容易出问题。
第二种是客户端备份,客户端连接redis数据源,使用redis的标准协议进行导出和导入。优点是只需要知道redis的用户名和密码,而不需要知道redis的宿主机的ssh密码即可操作。而且备份和恢复数据,不会影响新数据,比如备份到恢复这段时间产生了其他的主键的数据,恢复是不会清掉这部分主键的。
目前支持redis备份/数据迁移的可视化客户端软件,主要是yunedit-redis
它既支持增量导出(只导出部分key),也支持整库导出。符合所有的数据导出场景。
导入的时候,也支持设置很多不同的导入策略,比如是否判断数据重复等等,如下图所示:
使用yunedit-redis局域网导出10万+数据,只需要几秒钟,比去服务端操作速度还快很多,还不容易出错,比如迁移两段的redis版本不一致的问题,RDB对于版本要求比较高的问题。现在客户端备份应该作为备份的主力。