Redis数据迁移的4种方法

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis数据迁移的4种方法

方法一:离线迁移

通过RDB或者aof文件
RDB:
   目的库必须开启才能用
步骤:
    1.源库 执行  BGSAVE 
    2.copy 源库的.rdb文件至目标库
    3.重启目标库
AOF:
   源库和目的库必须都开启才能用
步骤:
    1.将源库的aof文件拷贝到目标库的数据目录中
   (两种方法)
    1.redis-cli  -p 6380  --pipe < ./appendonly.aof 
    2.重启
建议采用RDB

方法二:

单库–>单库

脚本,性能差,不建议使用

#coding=utf-8
import redis
redis_from = redis.StrictRedis(host='127.0.0.1', port=6379, db=10)
redis_to = redis.StrictRedis(host='127.0.0.1', port=6379, db=0)
if __name__ == '__main__':
    cnt = 0
    for k in redis_from.keys():
        data_type = redis_from.type(k)
        if data_type == 'string':
            v = redis_from.get(k)
            redis_to.set(k, v)
        elif data_type == 'list':
            values = redis_from.lrange(k, 0, -1)
            redis_to.lpush(k, values)
        elif data_type == 'set':
            values = redis_from.smembers(k)
            redis_to.sadd(k, values)
        elif data_type == 'hash':
            keys = redis_from.hkeys(k)
            for key in keys:
                value = redis_from.hget(k, key)
                redis_to.hset(k, key, value)
        else:
            print 'not known type'
        cnt = cnt + 1
    print 'total', cnt

方法三:

阿里开源redis-shake工具

解析、恢复、备份、同步

参考另一篇文章:

blog.csdn.net/qq_34874784/article/details/110822231


方法四:

主从同步迁移

步骤:

    1.redis-cli 进入客户端
    2.连接主     
    >  slaveof ip port   
    3.info查看是否复制成功
    4.断开主   
    > slavof no one
    相关实践学习
    基于Redis实现在线游戏积分排行榜
    本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
    云数据库 Redis 版使用教程
    云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
    目录
    相关文章
    |
    2月前
    |
    存储 缓存 NoSQL
    利用Redis List实现数据库分页快速查询的有效方法
    利用Redis List实现数据库分页快速查询的有效方法
    |
    4月前
    |
    设计模式 NoSQL Java
    常用的设计模式以及操作Redis、MySQL数据库、各种MQ、数据类型转换的方法
    常用的设计模式以及操作Redis、MySQL数据库、各种MQ、数据类型转换的方法
    |
    2月前
    |
    NoSQL Redis Docker
    Docker中Redis数据迁移到本地
    Docker中Redis数据迁移到本地
    22 1
    |
    23天前
    |
    NoSQL Redis 数据库
    通过migrate命令实现两个redis实例之间的数据迁移
    通过migrate命令实现两个redis实例之间的数据迁移
    |
    23天前
    |
    NoSQL Redis Sentinel
    redis数据迁移方式
    redis数据迁移方式汇总
    22 0
    |
    5月前
    |
    NoSQL Java Redis
    Redis【应用 01】Java实现动态切换写入不同Redis数据库的方法实例(动态切换Redis数据库)
    Redis【应用 01】Java实现动态切换写入不同Redis数据库的方法实例(动态切换Redis数据库)
    86 0
    |
    5月前
    |
    存储 缓存 NoSQL
    Redis的安装方法与基本操作
    Redis是一个开源的内存数据结构存储系统,也可以用作数据库、缓存和消息中间件。它支持多种数据结构,包括字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。
    81 0
    Redis的安装方法与基本操作
    |
    6月前
    |
    消息中间件 缓存 NoSQL
    阿里云国际站代理商:Redis实现分布式配置管理的方法与应用案例
    @luotuoemo飞机@TG阿里云国际站代理商:Redis实现分布式配置管理的方法与应用案例,为了实现高可用和负载均衡,可以将Redis部署成哨兵集群或集群模式。哨兵负责监控主从节点的状态,发现故障时自动进行故障转移。集群模式可以提高系统的可扩展性,通过添加更多的从节点来分摊负载压力。
    |
    8月前
    |
    NoSQL 安全 容灾
    1分钟实现Redis数据迁移任务
    NineData 基于全量复制、增量日志复制技术,提供了高效、安全可靠的 Redis 不停机迁移方案。当然,除了 Redis,NineData 已经支持数十种常见数据库的迁移复制,实现数据库迁移、数据容灾、数据双活、数据仓库实时集成等业务场景。同时,除了 SAAS 模式外,还提供了企业专属集群模式,满足企业最高的数据安全合规要求。
    162 0
    |
    11月前
    |
    存储 NoSQL Redis
    Redis复制的基础知识、原理和实现方法
    Redis复制的基础知识、原理和实现方法
    48 0