• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    redis批量迁移key的实例

    发布者: 山止川行 | 发布时间: 2025-6-19 12:35| 查看数: 65| 评论数: 0|帖子模式

    我们知道migrate 命令可以迁移redis的多个key,但是如果redis的key有非常多,那用起来就很不方便了。
    所以下面分享一个脚本来实现批量key的迁移,主要使用的命令为dumprestore
    脚本如下:
    1. #!/bin/bash
    2. redis-cli -h host1 -p 63791 -n 0 keys "*" | while read key
    3. do
    4. redis-cli -h host1 -p 63791 -n 0 --raw dump $key | perl -pe 'chomp if eof' | redis-cli -h host2 -p 6379 -n 0 -x restore $key 0
    5. echo "migrate key $key"
    6. done
    复制代码
    脚本具体解析:

    • 使用redis-cli连接到host1服务器,n代表database,执行keys "*"命令获取所有键名。
    • 使用while read key循环读取每个键名。
    • 对于每个键名,使用redis-cli连接到host1服务器,执行dump命令将键值序列化输出。
    • 使用perl -pe 'chomp if eof’命令处理输出结果,去除换行符。
    • 使用redis-cli连接到host2服务器,执行restore命令将键值恢复到host2服务器,ttl=0代表永不过期。
    • 输出迁移的键名。
    测试:
    1、我在本地模拟了两个redis实例。ip都为127.0.0.1,端口一个是默认的6379,一个是63791
    并且分别set了不同的key
    1. 127.0.0.1:63791> keys *
    2. 1) "age"
    3. 2) "like"
    4. 3) "colour"
    复制代码
    1. 127.0.0.1:6379> keys *
    2. 1) "student"
    复制代码
    2、使用脚本批量将63791实例的key迁移到6379实例

    我的脚本如下:
    1. #!/bin/bash
    2. redis-cli -h 127.0.0.1 -p 63791 -n 0 keys "*" | while read key
    3. do
    4. redis-cli -h 127.0.0.1 -p 63791 -n 0 --raw dump $key | perl -pe 'chomp if eof' | redis-cli -h 127.0.0.1 -p 6379 -n 0 -x restore $key 0
    5. echo "migrate key $key"
    6. done
    复制代码
    执行sh migrate.sh启动脚本
    1. jiagangdeMacBook-Pro jag-ide-dev/redis » sh migrate.sh
    2. OK
    3. migrate key age
    4. OK
    5. migrate key like
    6. OK
    7. migrate key colour
    复制代码
    查看6379实例
    可以看到63791实例上的数据已经被迁移了过来
    1. 127.0.0.1:6379> keys *
    2. 1) "like"
    3. 2) "age"
    4. 3) "student"
    5. 4) "colour"
    6. 127.0.0.1:6379> get colour
    7. "red"
    复制代码
    到此这篇关于redis批量迁移key的实例的文章就介绍到这了,更多相关redis批量迁移key内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    来源:https://www.jb51.net/database/3392513lj.htm
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    ×

    最新评论

    浏览过的版块

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表