当前位置: 首页 > news >正文

【赵渝强老师】Redis数据的迁移

在这里插入图片描述

通过使用Redis的键迁移功能,可以把数据从一个Redis数据库中迁移到另一个数据库中,例如从生产环境迁移到测试环境。Redis提供了move、dump+restore和migrate三种不同的方式来实现键的迁移。

视频讲解如下

【赵渝强老师】Redis数据的迁移

一、 使用move命令实现数据的内部迁移

下面通过具体的示例来演示move命令的使用。
(1)查看move命令的帮助信息。

127.0.0.1:6379> help move
MOVE key db
summary: Move a key to another database
since: 1.0.0
group: generic

(2)使用move命令移动键。

127.0.0.1:6379> move mykey1 3
(integer) 1

(3)切换到3号数据库中查看键。

127.0.0.1:6379> select 3
OK
127.0.0.1:6379[3]> keys *
1) "mykey1"
127.0.0.1:6379[3]>

二、 使用dump+restore实现实例间数据的迁移

dump+restore可以实现在不同的Redis实例之间进行数据迁移的功能,整个迁移的过程分为两步:首先,在源Redis数据库实例上,dump命令会采用的是RDB格式将键值序列化;其次,在目标Redis数据库实例上,restore命令将dump命令生成的键值执行反序列化进行复原。下面通过具体的示例来进行演示
(1)通过help命令查看dump命令的帮助信息。

127.0.0.1:6379> help dump
DUMP key
summary: Return a serialized version of the value stored at 
the specified key.
since: 2.6.0
group: generic

(2)在源Redis数据库实例上插入数据,并使用dump命令进行持久化。

127.0.0.1:6379> set hello world
OK
127.0.0.1:6379> dump hello
"x00x05worldtx00xc9#mHx84/x11s"

《Redis架构原理与高性能实战》

(3)通过help命令查看restore命令的帮助信息。

127.0.0.1:6379> help restore
RESTORE key ttl serialized-value [REPLACE] [ABSTTL] [IDLETIME seconds] [FREQ frequency]
summary: Create a key using the provided serialized value, 
previously obtained using DUMP.
since: 2.6.0
group: generic# 其中:ttl参数代表数据的过期时间。当ttl为0时,表示数据永远不过期。

(4)在目标Redis数据库实例上使用restore命令恢复数据。

127.0.0.1:6379> restore hello 0 "x00x05worldtx00xc9#mHx84/x11s"
OK
127.0.0.1:6379> get hello
"world"

三、 使用migrate实现实例间数据的迁移

migrate命令也可以用于在Redis数据库实例之间进行数据迁移的。实际上migrate命令就是将dump、restore、del三个命令进行组合,从而简化了操作流程。migrate命令具有原子性,并且从Redis3.0.6版本开始支持迁移多个键的功能,有效地提高了迁移效率。下面通过一个具体的示例来演示migrate命令的使用。
(1)使用help命令查看migrate命令的帮助信息。

127.0.0.1:6379> help migrate
MIGRATE host port key| destination-db timeout [COPY] [REPLACE] [AUTH password] [AUTH2 username password] [KEYS key]
summary: Atomically transfer a key from a Redis instance to another one.
since: 2.6.0
group: generic

(2)从源Redis数据库实例上迁移键到目标Redis数据库实例。

127.0.0.1:6379> migrate 192.168.79.12 6379 hello 0 1000
OK

(3)在目标Redis数据库实例上检查数据是否迁移成功。

127.0.0.1:6379> keys *
1) "hello"
127.0.0.1:6379> get hello
"world"

(4)在源Redis数据库实例上再次执行migrate命令。

127.0.0.1:6379> migrate 192.168.79.12 6379 hello 0 1000
NOKEY# 提示:migrate命令执行完成后,会删除源Redis数据库实例上键。

《Redis架构原理与高性能实战》

http://www.dtcms.com/a/578573.html

相关文章:

  • Rust编程学习 - 为什么说Cow 代表的是Copy-On-Write, 即“写时复制技术”,它是一种高效的 资源管理手段
  • Rust开发完全指南:从入门到与Python高效融合
  • 石家庄免费建站模板我不想找之前做网站的续费
  • 商城网站模板 免费五个跨境电商平台
  • 无人设备遥控器之数字图传技术
  • 哪个网站用织梦做的2017网站开发就业前景
  • 网站设计公司深圳ppt的网站导航栏怎么做的
  • React中的componentWillUnmount 使用
  • 培训型网站建设中华建设网站
  • 大型网站建设公司推荐店面设计餐饮
  • 中山品牌网站建设推广注册域名成功后怎样建设网站
  • 化妆品网页设计模板素材做网站优化用什么软件
  • 移动端高端网站怎么帮商家推广赚钱
  • 餐饮网站源码一个网站有几个快照
  • Windows Qt打开外部程序
  • 怎么建设商品网站网站建设首选公司
  • 西宁网站建设加盟代理北京高端网站制作公司
  • 微信小程序minium自动化测试SOP
  • 如何做好电子商务网站开发企业网站博客上如何营销
  • 【LeetCode】103. 二叉树的锯齿形层序遍历
  • 车联网终端TBOX车载无线4G网络盒子知识详解
  • 什么网站能免费做公众号封面做一个平面网站的成本
  • 作业11.6
  • 做网站项目流程国外文件传输网站
  • 论文分享 |重新思考3D分割:Unified-Lift——端到端的高斯泼溅场景分割新范式
  • xwiki做的网站邢台同城
  • 网站建设工作台账饲料公司网站建设方案
  • 初识MYSQL —— 内置函数
  • 吉林大学建设工程学院 旧网站国外网站免费dns
  • Windows2019IIS+PHP+MySQL环境搭建教程