暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

四、MongoDB 导出与导入

我的技术人生 2021-05-11
1714


    MongoDB数据的导出与导入,跟上一节的数据备份和还原是有点类似,都是为了从A库将数据迁移到B库,也都是用MongoDB DataBase Tools 中的工具来完成。但是,在操作上两者还是有很大的不同,备份和还原是针对整个数据库的,相较而言导出与导入就灵活多了。导出导入的数据格式可以多种,有json(默认)和csv;也可以指定要导出导入的字段,一个或者多个等不同。


1、导出


导出集合 fs.files 所有的数据, --type 可以不指定,默认就是json。

命令:

    mongoexport -d yzfile -c fs.files -o app/data/yzfile_export_file --type json


    如图:



    导出集合 fs.files 指定的数据, 类型为csv,此时需要指定要导出的类型以及字段,多个字段用, 隔开。如图:

    命令:

      mongoexport -d yzfile -c fs.files -o /app/data/yzfile_export_file_csv --type csv -f field


      如图:


      错误演示,命令

        mongoexport -d yzfile -c fs.files -o app/data/yzfile_export_file_csv --type csv


        2021-04-26T16:06:14.032+0800 connected to: mongodb://localhost/
        2021-04-26T16:06:14.036+0800 Failed: CSV mode requires a field list


        如图:


        参数说明:

                    -d :数据库名

                    -c :collection名

                    -o :输出的文件名

                    --type :输出的格式,默认为json

                    -f :输出的字段,如果--type为csv,则需要加上-f "字段名"



        2、导入


        导入json格式的所有数据,命令:

          mongoimport -d yzfile -c yzfile --file app/data/yzfile_export_file

          如图:



          导入CSV格式的数据,命令:

            # 导入全部字段, 以CSV第一行作为字段名
            mongoimport -d dbname -c collectionname --file filename --headerline --type csv 


            # 导入指定字段,
            mongoimport -d dbname -c collectionname --file filename --type csv -f field


            如图:



            说明: 参数  --headerline 和 -f field 不能同时使用。


            参数说明:

                        -d :数据库名

                        -c :collection名

                        --type :导入的格式默认json

                        -f :导入的字段名,多个用逗号隔开

                        --headerline :如果导入的格式是csv,则可以使用第一行的标题作为导入的字段

                        --file :要导入的文件




            文章转载自我的技术人生,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

            评论