承接上文,接下来咱们就来探讨一下Azure Redis的迁移问题,Redis自己是提供持久化的方法的,如AOF和RDB,可是在Azure Redis中,AOF和RDB都是只有Premium版本才支持的功能!因此对于standard和basic的redis来讲,须要能有一种更通用的迁移方式,微软官方并无官宣提供Azure Redis迁移的工具,可是redis团队的一名大佬仍是本身写了一个开源的迁移工具,此次就拿来给你们分享一下!
git
这个工具自己也是公开在Github上的,如下是Github的地址,咱们能够在这里下载到迁移工具
github
此方法比较适合Azure跨Region迁移,好比讲一个region的redis迁移到另一个region,下边来介绍下这个工具如何使用
api
首先来介绍下实验环境:
服务器
1.Azure Redis Standard, region chinanorth,原地址
ide
2.Azure Redis Standard, region chinanorth,目标地址工具
3.工做用laptop一个
ui
实验环境很简单,首先先在以前的地址上下载迁移工具
spa
在上一节当中,咱们已经使用随机数据生成程序,批量生成了200多万条数据,能够经过dbsize来查看
命令行
2.能够看到redis迁移工具下载完成后,主要包含如下内容
3.想要迁移的话很简单,运行redis-copy命令便可
.\redis-copy.exe --se mxyredis.redis.cache.chinacloudapi.cn --sa J****= --de mxyredis2.redis.cache.chinacloudapi.cn --da***
命令格式也很简单,只须要输入原地址,原服务器的key,目标地址,目标服务器的key便可
4. 命令行工具迁移时不会有输出信息,可是在目标redis能够看到数据量一直在增长
5.查看本机的资源监视器,能够看到本机和两台redis都有链接,并且进出都有流量,这意味着,这个工具的原理是先把数据从原redis下载到本地,而后再上传到目标redis!并非直接服务器对服务器直传的,因此这也表明,迁移的速度会受制于运行迁移工具的机器,因此想要速度快一些的话,最好在Azure上建立VM来运行脚本!实验也发现,经过公网的传输确实速度相对较慢,一小时才传输了不到1G数据
6.传输完成
7.能够看到两个节点数据是一致的了!迁移也就完成了
固然,须要注意的是,这个工具自己并不支持增量,再次运行的话还会把全部数据所有copy一次,不得不说,美中不足