当前位置: 代码网 > it编程>数据库>Redis > redis通过redis-dump镜像实现数据迁移

redis通过redis-dump镜像实现数据迁移

2025年04月24日 Redis 我要评论
一、redis-dump 镜像打包没有找到可用的redis-dump镜像,需要自己打包一下,这里我是在idea直接打包的1.1 安装windows docker我没有可用的docker环境,有的话可用

一、redis-dump 镜像打包

没有找到可用的redis-dump镜像,需要自己打包一下,这里我是在idea直接打包的

1.1 安装windows docker

我没有可用的docker环境,有的话可用连接可用的docker环境,无需部署windows版docker

windows docker 下载安装:

https://docs.docker.com/desktop/setup/install/windows-install/

注意要配置国内镜像源,不然会有拉取不到镜像的可能

点击小齿轮进入设置页面,点击左侧菜单栏的docker engine ,设置国内镜像源,如下图所示:

在这里插入图片描述

设置国内镜像源

{
  "builder": {
    "gc": {
      "defaultkeepstorage": "20gb",
      "enabled": true
    }
  },
  "experimental": false,
  "host": [
    "0.0.0.0:2375"
  ],
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://mirror.ccs.tencentyun.com",
    "https://reg-mirror.qiniu.com",
    "https://do.nark.eu.org",
    "https://dc.j8.work",
    "https://docker.m.daocloud.io",
    "https://dockerproxy.com",
    "https://docker.nju.edu.cn"
  ]
}

1.2 idea项目创建

新建maven项目,其他类型的或许也可以,但平时建maven项目习惯了

新建dockerfile文件

目录结构如下:

在这里插入图片描述

dockerfile文件内容如下:

from redis
run echo "" > /etc/apt/sources.list
run echo "deb http://mirrors.aliyun.com/debian/ bullseye main non-free contrib" >> /etc/apt/sources.list
run echo "deb http://mirrors.aliyun.com/debian-security/ bullseye-security main" >> /etc/apt/sources.list
run echo "deb http://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib" >> /etc/apt/sources.list
run echo "deb http://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib" >> /etc/apt/sources.list
run cat /etc/os-release
run redis-cli -v

run apt-get update && apt-get install ruby-dev -y \
    && apt-get install make -y \
    && apt-get install procps -y \
    && apt-get install gcc -y \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

# run gem sources -a http://ruby.taobao.org/
run gem install redis
run gem install uri
run gem install uri-redis
run gem install drydock
# run gem install highline
run gem install yajl-ruby --platform=ruby
run gem install redis-dump -v

1.3 idea镜像打包

点击 edit configurations

在这里插入图片描述

点击+,添加dockerfile

在这里插入图片描述

新建docker连接,我这里连接本地docker,使用的tcp连接方式

在这里插入图片描述

配置内容如图:

在这里插入图片描述

配置好后,点击运行:

在这里插入图片描述

查看生成的镜像

ps d:\ideaprojects\dockertest> docker images
repository     tag      image id       created         size
redis-dump     latest   f650cbe799ad   3 weeks ago     419mb

使用save命令保存,命令参考:菜鸟教程

二、redis数据迁移

2.1 数据导出

docker run redis-dump redis-dump -u redis://ip:6379 -d 0 > /redis-dump.json
# 或者也可以进入到容器内执行

2.2 数据导入

# 镜像启动
docker run redis-dump redis-dump
# 将json文件传入容器内
docker cp /redis-dump.json docker_id:/
# 进入容器
docker exec -it docker_id /bin/bash
# 数据导入
cat /redis-dump.json | redis-load -u:redis密码@ip:6379

到此这篇关于redis通过redis-dump镜像实现数据迁移的文章就介绍到这了,更多相关redis redis-dump镜像数据迁移内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网! 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com