• MongoDB 导入导出以及数据库备份


    -------------------MongoDB数据导入与导出-------------------
    1、导出工具:mongoexport
       1.1、概念:
            mongoDB中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件。可以通过参数指定导出的数据项,也可以根据指定的条件导出数据。
        1.2、语法:
            mongoexport -d dbname -c collectionname -o file --type json/csv -f field
            参数说明:
                -d :数据库名
                -c :collection名
                -o :输出的文件名
                --type : 输出的格式,默认为json
                -f :输出的字段,如果-type为csv,则需要加上-f "字段名"
       1. 3、示例:
      [root@localhost bin]# ./mongoexport -d my_mongodb -c user -o user.dat
      connected to: 127.0.0.1
      exported 2 records
      [root@localhost bin]# cat user.dat
      { "_id" : { "$oid" : "4f81a4a1779282ca68fd8a5a" }, "uid" : 2, "username" : "Jerry", "age" : 100 }
      { "_id" : { "$oid" : "4f844d1847d25a9ce5f120c4" }, "uid" : 1, "username" : "Tom", "age" : 25 }
      [root@localhost bin]#
      
       ....cvs
      [root@localhost bin]# ./mongoexport -d my_mongodb -c user --csv -f uid,username,age -o
      user_csv.dat
      connected to: 127.0.0.1
      exported 2 records
      [root@localhost bin]# cat user_csv.dat
      uid,username,age
      2,"Jerry",100
      1,"Tom",25
      [root@localhost bin]#
     
    2、数据导入:mongoimport
        2.1、语法:
            mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field
            参数说明:
                -d :数据库名
                -c :collection名
                --type :导入的格式默认json
                -f :导入的字段名
                --headerline :如果导入的格式是csv,则可以使用第一行的标题作为导入的字段
                --file :要导入的文件
     
        2.2、示例:
      2.2.1 导入JSON 数据
      我们先将表user 删除掉,以便演示效果
      > db.user.drop();
      true
      > show collections;
      system.indexes
      >
      然后导入数据
      [root@localhost bin]# ./mongoimport -d my_mongodb -c user user.dat
      connected to: 127.0.0.1
      imported 2 objects
      [root@localhost bin]#
      可以看到导入数据的时候会隐式创建表结构

      2.2.2 导入CSV数据
      我们先将表user 删除掉,以便演示效果
      > db.user.drop();
      true
      > show collections;
      system.indexes
      >
      然后导入数据
      [root@localhost bin]# ./mongoimport -d my_mongodb -c user --type csv --headerline --file
      user_csv.dat
      connected to: 127.0.0.1
      imported 3 objects
      [root@localhost bin]#
      参数说明:
       -type 指明要导入的文件格式
       -headerline 批明不导入第一行,因为第一行是列名
       -file 指明要导入的文件路径
      注意:
      CSV 格式良好,主流数据库都支持导出为CSV 的格式,所以这种格式非常利于异构数据迁移
            -
     
    -------------------MongoDB备份与恢复-------------------
    1、MongoDB数据库备份
        1.1、语法:
            mongodump -h dbhost -d dbname -o dbdirectory
            参数说明:
                -h: MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
                -d: 需要备份的数据库实例,例如:test
                -o: 备份的数据存放位置,例如:/home/mongodump/,当然该目录需要提前建立,这个目录里面存放该数据库实例的备份数据。
        1.2、实例:
          [root@localhost bin]# ./mongodump -d my_mongodb -o my_mongodb_dump
     
    2、MongoDB数据库恢复
        2.1、语法:
            mongorestore -h dbhost -d dbname --dir dbdirectory
     
            参数或名:
                -h: MongoDB所在服务器地址
                -d: 需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
                --dir: 备份数据所在位置,例如:/home/mongodump/itcast/
                --drop: 恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用!
        2.2、实例:
       [root@localhost bin]# ./mongorestore -d my_mongodb my_mongodb_dump/*
     
  • 相关阅读:
    css中position的两种定位(absolute、relative)
    C# 如何转换生成长整型的时间
    C# 如何转换生成长整型的时间
    C# 如何转换生成长整型的时间
    easyui dialog的一个小坑
    easyui dialog的一个小坑
    ACM2027
    [VUE]关于路由哪些事儿
    hexo+github
    我们一起学React Native(一):环境配置
  • 原文地址:https://www.cnblogs.com/GtShare/p/7660630.html
Copyright © 2020-2023  润新知