zoukankan      html  css  js  c++  java
  • MongoDB导入导出和踩过的坑

    从网上一搜,基本大概都是这样的

    导出:mongoexport --port 29050 -u zdha -p zdha1234 -d meerkat320 -c person --type=json -o /opt/roman/235-meerkat320-person.json
    
    导入:mongoimport --port 27017 -u zdha -p zdha1234 -d meerkat-min -c person-320 --type=json --file /opt/roman/235-meerkat320-person.json

    直接试了上面的导入语句,报错:bash: mongoexport: command not found...

    Q:bash: mongoexport: command not found...
    A:如果你正在使用git bash,请使用以下命令
    $ ./mongo

    调整后,在241上测试导出:

    ./mongo mongoexport --port 27017 -u zdha -p zdha1234 -d meerkat-min -c car --type=json -o /opt/roman/235-meerkat320-car.json

    以上语句存在的错误:
    (1)mongo命令敲的不对
    (2)默认是连本地,笔者而言就是192.168.89.9
    所以修改过之后的就是:

    ./mongoexport -h 192.168.31.241 -port 27017 -u zdha -p zdha1234 -d meerkat-min -c car --type=json -o /opt/roman/235-meerkat320-car.json

    too many positional arguments: [27017]

    再调整:

    ./mongoexport -h 192.168.31.241:27017 -u zdha -p zdha1234 -d meerkat-min -c car --type=json -o /opt/roman/235-meerkat320-car.json

    error connecting to db server: server returned error on SASL authentication step: Authentication failed.

    最终调整,并成功了的命令(在241上执行的):

    ./mongoexport -h 192.168.31.241:27017 -u zdha -p zdha1234 --authenticationDatabase admin -d meerkat-min -c car --type=json -o /opt/roman/235-meerkat320-car.json

    =================== 终于导出的好了=================

    现在开始切换到测试的库去,继续在241上执行导出单表命令:

    ./mongoexport -h 192.168.31.235:29050 -u zdha -p zdha1234 --authenticationDatabase admin -d meerkat320 -c car --type=json -o /opt/roman/235-meerkat320-car.json

    2021-05-25T15:57:06.046+0800 exported 78 records

    下面开始准备吧测试环境导出的数据导入到开发环境:

    ./mongoimport -h 192.168.31.241:27017 -u zdha -p zdha1234 --authenticationDatabase admin -d meerkat-min -c car --type=json -o /opt/roman/235-meerkat320-car.json

    error parsing command line options: unknown option "o"

    导入语句指定的导入文件路径,不能用 -o,而是直接跟着后面,如下:

    ./mongoimport -h 192.168.31.241:27017 -u zdha -p zdha1234 --authenticationDatabase admin -d meerkat-min -c car --type=json /opt/roman/235-meerkat320-car.json

    2021-05-25T16:06:02.507+0800 imported 78 documents

    可以看到已经导入成功了,如果立马又重复执行一遍导入语句,会报错,如下:
    - E11000 duplicate key error collection: meerkat-min.car index: _id_ dup key: { : "a47bcde57508d073bbc5c9189bd1fafe" }

    可以对导入语句做下优化,加上--upsert

    ./mongoimport -h 192.168.31.241:27017 -u zdha -p zdha1234 --authenticationDatabase admin -d meerkat-min -c car --type=json /opt/roman/235-meerkat320-car.json --upsert

    单表的成功了,现在改成全库的,由于全库的就是“备份”的概念了,要使用./mongodump命令

    导出:

    ./mongodump -h 192.168.31.235:29050 -u zdha -p zdha1234 --authenticationDatabase admin -d meerkat320 -o /opt/roman/235-meerkat320/

    导入:

    ./mongorestore -h 192.168.31.241:27017 -u zdha -p zdha1234 --authenticationDatabase admin -d meerkat-min /opt/roman/235-meerkat320/meerkat320/
  • 相关阅读:
    二次型(求梯度) —— 公式的简化
    Opencv中K均值算法(K-Means)及其在图像分割中的应用
    统计学相关概念及机器学习中样本相似性度量之马氏距离
    Opencv中SVM样本训练、归类流程及实现
    1+2+3+...+100 不允许使用乘法和除法,条件分支循环等
    1+2+3+...+100 不允许使用乘法和除法,条件分支循环等
    crtmpserver实现防盗流和流推送验证
    快速幂或者矩阵快速幂
    如何调整 php 应用的上传附件大小?
    三个和数组有关的程序题目(C++)
  • 原文地址:https://www.cnblogs.com/zz-3m23d-begining/p/14813245.html
Copyright © 2011-2022 走看看