Mongo导入、导出、备份、恢复、升级脚本执行

1. 导出:
mongoexport -d cloudci -c project -o /home/project.json
     参数说明:
            -d :数据库名;
            -c :collection名;
            -o :输出的文件名;
            --type : 输出的格式,默认为json;
            -f :输出的字段,如果-type为csv,则需要加上-f "字段名"。

2. 导入:
mongoimport -d cloudci -c project --file project.json --type json

    参数说明:
            -d :数据库名;
            -c :collection名;
            --type :导入的格式默认json;
            -f :导入的字段名;
            --headerline :如果导入的格式是csv,则可以使用第一行的标题作为导入的字段;
            --file :要导入的文件.

3. 备份 

mongodump -h dbhost -d dbname -o dbdirectory
        参数说明:
            -h: MongDB所在服务器地址,例如:127.0.0.1,也可以指定端口号:127.0.0.1:27017;
            -d: 需要备份的数据库实例,例如:test;
            -o: 备份的数据存放位置,例如:/home/back/,该目录需要提前建立,这个目录里面存放该数据库实例的备份数据。

         实例:mongodump -d cloudci -o /home/back/

4. 恢复 

mongorestore -h dbhost -d dbname --dir dbdirectory
        参数或名:
            -h: MongoDB所在服务器地址;
            -d: 需要恢复的数据库实例,例如:test,这个名称也可以和备份时候的不一样,比如test2
            --dir: 备份数据所在位置,例如:/home/back/;
            --drop: 恢复的时候,先删除当前数据,然后恢复备份的数据。

        实例: mongorestore -d cloudci  --dir /home/back/cloudci

 

5. 创建索引
rsCloursCloudci:PRIMARY> db.builds.ensureIndex({projectName:1}, {background: true})
{
    "createdCollectionAutomatically" : false,
    "numIndexesBefore" : 1,
    "numIndexesAfter" : 2,
    "ok" : 1
}

6. 查看索引
rsCloudci:SECONDARY> db.builds.getIndexes()
[
    {
        "v" : 1,
        "key" : {
            "_id" : 1
        },
        "name" : "_id_",
        "ns" : "cloudci.builds"
    },
    {
        "v" : 1,
        "key" : {
            "projectName" : 1
        },
        "name" : "projectName_1",
        "ns" : "cloudci.builds",
        "background" : true
    }
]

7. mongo执行升级脚本
mongo localhost:27017/dbname  dbaStatCollections.js

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章