Redis数据迁移
redis requires ruby version => 2.2.2的解决方案:
1、安装rvm,rvm官网地址:http://rvm.io/ 其上也有相应的安装教程
# gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
# curl -L get.rvm.io | bash -s stable
# find / -name rvm -print
# source /usr/local/rvm/scripts/rvm
2、修改 rvm下载 ruby的源,到 Ruby China 的镜像
# gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
3、查看rvm库中已知的ruby版本
# rvm list known
4、安装一个ruby版本
# rvm install 2.6.3
5.、使用一个ruby版本
# rvm use 2.6.3
6、设置默认版本
# rvm use 2.6.3 --default
7、卸载一个已知版本
# rvm remove 2.0.0
8、查看ruby版本
# ruby -v
然后再执行 gem install redis 或 gem install redis-dump 后则不会再出现require version的报错提示
参考资料:https://www.jianshu.com/p/72443fef9554
https://blog.csdn.net/Gushiyuta/article/details/90770681
redis的备份和还原,借助了第三方的工具---redis-dump, redis中使用redis-dump导出、导入、还原数据实例
1、安装redis-dump
# yum install ruby rubygems ruby-devel //安装rubygems 以及相关包
# gem sources -a https://ruby.taobao.org/ //源,加入淘宝,外面的源不能访问
# gem install redis-dump -V //安装redis-dump
2、redis-dump导出数据
# redis-dump -u 127.0.0.1:6379 > test.json //导出数据
# redis-dump -u 127.0.0.1:6379 -d 2 > db2.json //导出指定db的数据
3、redis-load还原数据
# redis-load -u 127.0.0.1:6379 < test.json //导入数据
以上是redis单机实例进行数据迁移的方法,但不适用于redis3.0版的集群操作
在redis集群环境下经实验证实,从旧环境整体复制迁移到新环境后,根据新环境需求只需要修改data目录下的所有cluster节点配置文件的IP地址即可,即 cluster-config-file,比如nodes-6661.conf文件中的
234f07c87b866415260688abab398e76b7edebd8 172.16.65.88:6661 myself,master - 0 0 1 connected 0-4095
然后再分别启动各个实例。(不需要重新建立配置集群)