zoukankan      html  css  js  c++  java
  • MongoDB学习(三)数据导入导出及备份恢复

    在Mongo学习(二)中就讲到了在bin目录下有一些工具,本篇就是使用这些工具进行数据的导入导出及备份恢复。

    注意:以下命令均在cmd命令行中输入,导出及备份未指明目录情况下,均保存在当前操作目录下。

    数据导出mongoexport

    1.常用导出方法:导出数据为json

    假设库里有一张area 表,里面有9 条记录,我们要将它导出

    >c:mongoinmongoexport -d iflashbuy_log -c area -o c:area.dat

    正常情况下输出如下:

    connected to: 127.0.0.1
    exported 9 records

    参数说明:
     -d 指明使用的库, 本例中为” iflashbuy_log”
     -c 指明要导出的表, 本例中为”area”
     -o 指明要导出的文件名及目录, 本例中为”area.dat”
    从上面可以看到导出的方式使用的是JSON 的样式

    2.导出CSV格式的文件

    >c:mongoinmongoexport -d iflashbuy_log -c area  --csv -f  id,province,city   -o c:area.dat

    参数说明:
     -csv 指要要导出为csv 格式,导出csv之后必须指明导出的列
     -f 指明需要导出哪些列

    数据导入mongoimport

    1.导入JSON 数据

    a. 我们先将表area删除掉,以便演示效果 db.area.drop();

    b. 再执行导入命令:

    >c:mongoinmongoimport -d iflashbuy_log -c area c:area.dat

    正常情况下输出以下:

    connected to: 127.0.0.1
    imported 9 objects

    可以看到导入数据的时候会隐式创建表结构.

    2.导入CSV 数据

    a. 我们先将表area删除掉,以便演示效果 db.area.drop();

    b. 再执行导入命令

    >c:mongoinmongoimport -d iflashbuy_log -c area --type csv --headerline --file c:area.data

    参数说明:
     -type 指明要导入的文件格式
     -headerline 批明不导入第一行,因为第一行是列名
     -file 指明要导入的文件路径
    注意:

    CSV 格式良好,主流数据库都支持导出为CSV 的格式,所以这种格式非常利于异构数据迁移

    数据备份mongodump

    可以用mongodump 来做MongoDB 的库或表级别的备份,下面举例说明:

    1. 备份iflashbuy_log数据库

    >c:mongoinmongodump -d iflashbuy_log

    此时会在当前目录下创建一个dump 目录,用于存放备份出来的文件,也可以指定备份存放的目录。

    2. 指定目录备份iflashbuy_log数据库

    >c:mongoinmongodump -d iflashbuy_log -o c:my_mongodb_dump

    这个例子中将备份的文件存在了c:my_mongodb_dump目录下

    数据恢复mongorestore

    由于刚刚已经做了备份,所以我们先将库iflashbuy_log删除掉

    >use iflashbuy_log

    switched to db iflashbuy_log

    >db.dropDatabase()

    接下来我们进行数据库恢复

    1.恢复iflashbuy_log数据库

    >c:mongoinmongorestore -d my_mongodb c:my_mongodb_dump

    经验证数据库又回来了,其实要是想恢复库,也大可不必先删除iflashbuy_log 库,只要指明 --drop 参数,就可以在恢复的时候先删除表然后再向表中插入数据

    2.不删除库恢复库

    >c:mongoinmongorestore -d my_mongodb --drop  c:my_mongodb_dump

    至此,Windows系统下,对MongoDB的数据导入导出以及备份恢复就讲完了。

  • 相关阅读:
    176. Second Highest Salary
    175. Combine Two Tables
    172. Factorial Trailing Zeroes
    171. Excel Sheet Column Number
    169. Majority Element
    168. Excel Sheet Column Title
    167. Two Sum II
    160. Intersection of Two Linked Lists
    个人博客记录
    <meta>标签
  • 原文地址:https://www.cnblogs.com/a2502971/p/7248587.html
Copyright © 2011-2022 走看看