数据库之迁移常规操作(Mongodb篇)

一、部署mongodb数据库。

注:采用docker容器进行安装

二、在admin用户创建testdb文档插入两条数据

shell 复制代码
admin> db.testdb.insertMany([{name:"1",age:1,addr:"earth"},{name:"2",age:2, addr:"moon"}])
admin> db.testdb.find()

三、导出数据

shell 复制代码
# 进入docker
root@7de87adc3b50:/# mongoexport -h localhost:27017 -d admin -u root -p root -c testdb -o /data/testdb.json

四、导入数据

注:将导出的json文件导入新的用户中
注:进入test库, 创建root用户后退出进行数据导入

shell 复制代码
mongoimport -h localhost:27017 -u root -p root -d test -c testdb --type json /data/testdb.json

五、window中导入导出

注:导出

shell 复制代码
# window -c 文档, p 密码, u 账号, d 用户
mongoexport.exe -h localhost:28007 -d database -u admin  -p 123456  -c result -o D:/project/result.json

注:导入

导入json 文件, 可下载工具。 mongodb database tools 工具链接 》》 https://www.mongodb.com/try/download/database-tools

shell 复制代码
mongoimport -h localhost:27017 -u root -p root -d database -c result --type json D:/project/result.json --jsonArray

注:导入报错

尝试使用--legacy mongo历史版本模式进行导入
错误提示:Failed: error unmarshaling bytes on document #0: JSON decoder out of sync - data changing underfoot?

shell 复制代码
mongoimport -h localhost:27017 -u root -p root -d database -c result --file D:/project/result.json --legacy --jsonArray

总结

  1. mongo在window和linux系统中数据的导入导出
  2. mongo使用docker容器创建
  3. 解决在windows中导入报错后使用历史版本模式进行导入后成功
相关推荐
郝学胜-神的一滴1 分钟前
Linux的pthread_self函数详解:多线程编程中的身份标识器
linux·运维·服务器·开发语言·c++·程序人生
love530love4 分钟前
【笔记】华硕 ROG MAXIMUS Z890 HERO 主板 BIOS 更新完整操作实录
运维·人工智能·windows·笔记·单片机·嵌入式硬件·bios
小立爱学习5 分钟前
ARM64 指令 --- CCMP/CSEL
linux·c语言
jimy111 分钟前
程序崩溃free(): double free detected in tcache 2
linux·开发语言·数据结构·链表
松涛和鸣24 分钟前
37、UDP网络编程入门
linux·服务器·前端·网络·udp·php
坐吃山猪25 分钟前
Python命令行工具Click
linux·开发语言·python
Lueeee.29 分钟前
FFMPEG核心结构体
linux·ffmpeg
山土成旧客30 分钟前
【Python学习打卡-Day28】类的蓝图:从模板到对象的构建艺术
linux·python·学习
怀旧,32 分钟前
【Linux系统编程】14. 库使用与原理(上)
linux·运维·服务器
QT 小鲜肉34 分钟前
【Linux命令大全】001.文件管理之locate命令(实操篇)
linux·运维·服务器·chrome·笔记