实际生产场景中,有可能会因为迁移机房或者更换物理机等原因需要在生产环境迁移redis数据。本文就来为大家介绍一下迁移redis数据的方法。

迁移redis数据一般有如下3种方式:

1、第三方工具redis-dump,redis-load

2、aof机制,需要开启aof功能

3、rdb存储机制

这里介绍第一种方式,通过redis-dump导出数据,再通过redis-load导入。开始吧。

第一步:安装gcc

终端执行gcc命令,如果提示没有此命令,说明需要安装。否则跳过此步

yum -y install gcc automake autoconf libtool make

第二步:配置Ruby官网源地址

因为默认的Ruby官网源地址在国外,访问速度很慢,所以需要配置成国内的源地址

gem sources -a http://gems.ruby-china.org/     添加国内源地址

gem source -l                         查看是否添加成功

gem source --remove http://rubygems.org/       去掉国外源地址

gem source -l                         确认现在的源地址只有国内

第三步:安装rvm命令

配置Google DNS /etc/resolv.conf nameserver 8.8.8.8
gpg2 --keyserver hkp://keys.gnupg.net --recv-keys D39DC0E3
curl -L get.rvm.io | bash -s stable
echo "export rvm_max_time_flag=20" >> ~/.rvmrc

第四步:安装Ruby

rvm install 2.3.3 

第五步:确认Ruby版本

因为redis-dump必须要求ruby的版本不低于2.2.2

ruby -v 

如果输出信息是ruby 2.3.3xxx,说明现在用的版本是正确的,直接跳到下一步。否则还要执行以下操作:

rvm use 2.3.3 --default 

将默认使用ruby的版本设置为2.3.3。

rvm remove $version

删除旧版本,$version就是ruby -v查到的版本,只需要指定前面的数字版本号就行。

第六步:安装redis-dump

gem install redis-dump -V 

第七步:确认redis-dump安装成功

find / -iname redis-dump 

第八步:redis-dump导出数据

用redis-dump导出的数据格式都是json格式

redis-dump -u :yourpassword@127.0.0.1:6379 > /tmp/redis-mv.json    注意换成自己的密码,如果没有密码就去掉

第九步:将导出的数据文件移动到导入的redis服务器上去

第十步:redis-load导入数据

cat redis-mv.json | redis-load -u :yourpassword@127.0.0.1:6379     注意换成自己的密码,如果没有密码就去掉 

到此数据就迁移完了。别忘了去导入的redis查看验证下。

更多学习内容请访问:

腾讯T3-T4标准精品PHP架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)​

使用redis-dump与redis-load方式迁移redis数据库的更多相关文章

  1. Mysql 利用拷贝data目录文件的方式迁移mysql数据库

    Mysql 利用拷贝data目录文件的方式迁移mysql数据库 步骤如下: 1.首先要确定data目录 这个问题困扰了我很久,因为网上的帖子大部分只是说拷贝mysql数据库目录下的data文件夹中的数 ...

  2. redis咋么实现分布式锁,redis分布式锁的实现方式,redis做分布式锁 积极正义的少年

    前言 分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介 ...

  3. 利用拷贝data目录文件的方式迁移mysql数据库

    其实迁移数据库,一般用sql文件就行,把A服务器数据库的表结构和数据等等导出,然后导入到B服务器数据库, 但是这次数据文件过大,大约有40个G,使用命令行导入,效果不是很好,经常在执行过程中报错.卡死 ...

  4. Redis的持久化之RDB方式

    RDB方式 Redis是默认支持的 优势:只有一个文件,时间间隔的数据,可以归档为一个文件,方便压缩转移(就一个文件) 劣势:如果宕机,数据损失比较大,因为它是没一个时间段进行持久化操作的.也就是积攒 ...

  5. Redis数据的导出和导入(dump和load方式)

    迁移redis数据一般有如下3种方式: 第三方工具redis-dump,redis-load aof机制,需要开启aof功能 rdb存储机制 这里介绍第一种方式,通过redis-dump导出数据,再通 ...

  6. Redis学习——Redis持久化之AOF备份方式保存数据

    新技术的出现一定是在老技术的基础之上,并且完善了老技术的某一些不足的地方,新技术和老技术就如同JAVA中的继承关系.子类(新技术)比父类(老技术)更加的强大! 在前面介绍了Redis学习--Redis ...

  7. redis 迁移工具 redis-port 从阿里云迁移到aws

    对于 redis 的 迁移我在网上看到了很多方法,有使用redis-dump 的,有使用 aof导入方式,有rdb文件迁移方式,和redis-port. 由于我是将  redis  从阿里云迁移到AW ...

  8. redis内存数据的持久化方式

    转: http://blog.csdn.net/wzqzhq/article/details/64920996 概述 Redis的强大性能很大程度上都是因为所有数据都是存储在内存中的,然而当Redis ...

  9. Redis-port安装使用实现redis迁移codis,以及简单redis pipe实现将mysql迁移redis

    (0)Redis-port原理: 首先是看到下面这篇文档开始研究的redis-port http://www.itnpc.com/news/web/146085373656602.html  简要截图 ...

随机推荐

  1. IDEA报错:Could not find resource com/liwen/bean/userMapper.xml

    主要原因设idea无法识别src路径下的xml文件,要把xml文件建立在resources文件下

  2. Node/Python 工具搭建cmder和nrm

    一.安装cmder cmder是windows下的一款终端工具,支持很多linux命令,用起来还是很爽的. 1.安装 http://cmder.net/ 直接在官网下载,解压即可. 2.cmder配置 ...

  3. python之线程和进程

    进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握.最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂. 1:计算机的核心是CPU,它承担 ...

  4. Spring - 数据库开发概述

      Spring 数据库开发 Spring 的 JDBC 模块负责数据库资源管理和镨误处理,大大简化了开发人员对数据库的操作,使得开发人员可以从繁琐的数据库操作中解脱出来,从而将更多的精力投入到编写业 ...

  5. VSCode 快速生成 .vue 模版

    VSCode 快速生成 .vue 模版 安装vscode 官网:https://code.visualstudio.com/ 安装 Vetur 插件,识别 vue 文件 插件库中搜索Vetur,点击安 ...

  6. Cplex教育版申请

    任何人:直接在公众号"毒书 彼记" ,“资源下载” 板块下载: 如果你的学校没有购买cplex软件没那么,你就不可以下载教育版的cplex软件,如过下载免费板,它的功能会有一些限制 ...

  7. python 开发工具简介

    一.python 开发工具简介 1.IDLE IDLE是开发python程序的基本IDE(集成开发环境),具备基本的IDE的功能,是非商业Python开发的不错的选择.当安装好python以后,IDL ...

  8. Windows 7集成IE11(离线安装包、补丁)

    当Win7系统需要集成IE11时,我们需要提前打入6个补丁 KB2731771.KB2786081.KB2834140.KB2670838.KB2729094.KB2533623 32位 ★百度网盘 ...

  9. Python学习-第四节:常用模块-logging,re,time

    1:logging模块 import logging logging.debug('This is debug message') logging.info('This is info message ...

  10. 小白快速使用fetch与后端交互

    本人专心后端,但在完成页面碰到了交互,选择了fetch来完成, 总结了一下简单的使用fetch的方法. fetch是纯原生JS与后端交互的方法,请注意,Fetch规格不同于jQuery.ajax(), ...