最近有个项目因为要搬迁服务器的原因,去找了服务器公司的运维,需要收费,于是果断决定自己实现这个功能。现在百度上已经一大把redis数据库迁移的教程,大部分是利用主从复制或者利用redis的RDB备份之后在需要迁移到的redis放进去来达到迁移的目的。下面的是两种不同情况下可以用到的命令,比较简单###
1.move迁移###
迁移之前:
迁移命令:
命令:redis-cli -n 2 keys '*' | xargs -I '{}' redis-cli -n 2 move '{}' 1
迁移结果:
move迁移有个弊端就是会删除源库的所有key迁移到目标库中
2.migrate迁移###
迁移之前:
迁移命令:
命令:redis-cli -n 2 keys '*' | xargs -I '{}' redis-cli -n 2 migrate 目标IP 6379 '' 2 10000 COPY keys '{}'
迁移结果:
migrate迁移不会删除原有的key并且迁移到目标库中