mongodb数据迁移

因服务器到期,需要将之前机器上面的数据进行数据迁移,并将服务全部docker化

备份

首先需要将现有即将到期的服务器上面的mongo数据进行备份

mongodump -h dbhost -d dbname -o dbdirectory
  • -h:mongodb所在服务器地址,可指定端口:127.0.0.1:27016
  • -d:需要备份的数据库实例
  • -o:备份数据存放位置

这里需要⚠️mongo与mysql不一样的是需要单个数据库实例进行备份,而mysql在备份的时候可能会是直接导出整个服务器的数据而不是单个库,这里在mongodb备份的时候如果不设置数据库实例 则会备份所有的实例

压缩传送

第二步我选择将备份好的文件进行压缩,方便进行服务器间传输

zip db.zip ./dbname

scp username@ip/path username2@ip/path

Docker

这一步主要是设置新机器上面的docker环境(可根据自己的服务器类型进行docker的安装,这里就不进行赘诉了,不了解的可以自行百度)

正常情况下pull镜像时会特别慢,这里建议设置下加速,创建或者修改 /etc/docker/daemon.json 文件

{  "registry-mirrors": [    // Docker中国区官方镜像    "https://registry.docker-cn.com",    // 网易    "http://hub-mirror.c.163.com",    // 中国科技大学    "https://docker.mirrors.ustc.edu.cn"  ]}

或者在阿里云生成自己的加速地址 容器镜像服务=>镜像加速器
重启docker

service docker restart

docker info// Registry

Docker Mongo

docker pull mongodocker imagesdocker run -d -p 27017:27017 -v $PWD/mongo/db:/data/db --name mongodb --auth

我这里开启了auth认证?

docker ps -adocker exec -it mongodb bash

接下来就是配置数据库的帐号密码了

mongo> use admin> db.createUser({ user: 'username', pwd: 'password', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });> db.auth('username', 'password')1> use dbname> db.createUser({ user: 'dbusername', pwd: 'dbpassword', roles: [{ role: "readWrite", db: "dbname" }] });> db.auth('dbusername', 'dbpassword')1

以上表示创建用户成功,并且验证成功
退出docker 镜像 exit

恢复数据

  • copy 文件至镜像中
  • 执行mongorestore
cd /pathunzip db.zipdocker cp db mongodb:/home/docker exec -it mongodb bashcd /homelsmongorestore -u=dbusername -p=dbpassword -d dbname ./db// 日志提示导入成功

测试

  1. 通过mongo shell 进行查询(在docker镜像中)
mongo> use dbname> db.col.find(query, projection)// 数据正常 表示没问题
  1. 通过Navicat 连接进行验证(可能需要开启mongo端口)

以上就是数据迁移的所有内容 enjoy it?!


如果你觉得这篇内容对你挺有启发,我想邀请你帮我两个小忙:

  • 点个【在看】,或者分享转发,让更多的人也能看到这篇内容

  • 关注公众号【思享说】,不定期分享原创&精品技术文章。

欢迎评论区留下你的精彩评论~

觉得文章不错可以分享到朋友圈让更多的小伙伴看到哦~

客官!在看一下呗

镜像迁移到registry_数据库迁移了解一下相关推荐

  1. aws mysql 迁移_Amazon DMS 数据库迁移_数据迁移_云迁移-AWS云服务

    使用案例 同构数据库迁移 在同构数据库迁移中,源数据库和目标数据库采用相同或兼容的数据库引擎,例如从 Oracle 迁移至 Amazon RDS for Oracle.从 MySQL 迁移至 Amaz ...

  2. jpa mysql脚本迁移_Spring Boot 数据库迁移:概述

    原标题:Spring Boot 数据库迁移:概述 前言: 在这里的数据库迁移主要是对数据库结构版本管理和迁移. 一.为什么需要数据库迁移工具? 那在没有使用迁移工具的时候,我们会碰到什么呢? (1)多 ...

  3. oracle数据库迁移收费,ORACLE数据库迁移计划

    数据迁移计划 原因: oracle数据库数据文件将磁盘空间占满导致数据无法写入,如果删除历史数据,表空间不会释放占用物理空间不会释放,所以磁盘依旧是满的,现在需要腾出部分空间,然后挂在新的盘符为数据存 ...

  4. centos mysql数据迁移_Centos MySQL数据库迁移详细步骤

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

  5. mysql 客户无感知迁移_亿级账户数据迁移,不用数据库工具还能怎么搞?

    原标题:亿级账户数据迁移,不用数据库工具还能怎么搞? 背景 在阿里巴巴内部"大中台,小前台"的组织和业务体制,使前线业务更加敏捷,赋能业务积极迎接未来挑战和机遇,在阿里大中台能力建 ...

  6. 使用容器和数据库克隆进行数据库迁移

    SQL Server迁移在DBA的生命周期中是一个常量,SQL Server 2008的支持终结正在推动大量的迁移规划.数据库迁移通常涉及将备份还原到目标环境,为应用程序测试提供开发和QA环境,以及识 ...

  7. python数据库迁移命令_创建和进行数据库迁移,同步数据库

    模型(model)建好后,django可以根据这个模型(model)在数据库中创建一张数据表格. Django自带一个数据库迁移(migration)系统来跟踪对模型(models)的修改,然后同步到 ...

  8. mysql数据库快速传输方案_MySQL数据库迁移快速导出导入大量数据

    数据库迁移是我们经常可遇到的问题,对于少量的数据,迁移基本上不会有什么问题.生产环境中,有以下情况需要做迁移工作: 磁盘空间不够.比如一些老项目,选用的机型并不一定适用于数据库.随着时间的推移,硬盘很 ...

  9. Harbor升级和数据库迁移手册

    Harbor升级和数据库迁移手册 当升级一个已经存在的Harbor实例到新版本时,需要迁移数据库数据.参考What's New in Harbor Database Schema查看数据库发生了哪些变 ...

最新文章

  1. WCF服务端运行时架构体系详解[下篇]
  2. 【效率】大厂出品免费图标资源站
  3. 设计模式之_工厂系列_01
  4. windows apache 开启 GZIP
  5. 【英语学习】【Level 07】U01 Making friends L6 At the park
  6. Python中的命名空间是什么?
  7. java APIs for xml --------dom(2)
  8. ps 命令查看进程状态
  9. java 中 集合类相关问题
  10. C++语言对C语言的扩展(二)
  11. 数值分析·学习 | 平方根法和追赶法matlab实现
  12. 群晖7.X关闭双重验证(OTP)的方法
  13. 数据结构名词解释以及简答
  14. FPGA时钟倍频,分频
  15. 142Echarts - 矩形树图(Disk Usage)
  16. Web 2.0 创业神器为何天生敏捷?
  17. 小鸡腿U R III 杭州2013
  18. linux下使用python截图_linux多线程网页截图-python
  19. c++怎么判断系统是64位还是32位
  20. 前端JS校验银行卡卡号和身份证号码(附ES6版方法)

热门文章

  1. android cmake 打印_Android NDK 开发:CMake 使用
  2. fastdfs文件上传 read timeout_一文看懂centos7系统部署FastDFS 分布式文件系统
  3. 【数据结构----笔记1】查找算法之【顺序查找和折半查找】
  4. react 将token充入_【React全家桶入门之十】登录与身份认证
  5. KMP算法经典题目--实现 strStr()
  6. mysql的repeat_mysql函数中使用repeat循环的例子
  7. ajax 请求_你了解前端出现Ajax跨域请求的原因吗?
  8. 拟合方程是什么matlab,matlab离散型数据拟合方程,求系数,哪个大神能说说方法...
  9. C++基础与深度解析第六章:函数
  10. 易语言通过服务器发送文件,易语言局域网文件传输带聊天功能例程