数据库
首页 > 数据库> > mongodb非交互式命令

mongodb非交互式命令

作者:互联网

创建连接执行命令

         

批量执行命令

        ./mongo 127.0.0.1:37017/mydb -uadmin -pTran --authenticationDatabase admin --eval "printjson(db.asset_scan.findOne());printjson(db.asset_scan.findOne());"

        ./mongo 127.0.0.1:37017/mydb -uadmin -pTran --authenticationDatabase admin --eval "db.currentOp()"

        

 执行命令脚本文件

       ./mongo 127.0.0.1:37017  test.js

       ./mongo  --nodb test.js   不用默认的连接就必须使用 --nodb选项参数

       

         

 test.js 
var url = "mongodb://admin:Tran@127.0.0.1:37017/"
var con = new Mongo(url)
var db = con.getDB("mydb")
printjson(db.stats())
test.js

     

 交互式创建分区表

    设置分片
       use admin
       db.auth("admin","admin")
       db.runCommand({enablesharding:"mydb"}) //必须先切换到admin数据库然后才能有权限创建分区表
      对新表进行设置
        db.runCommand({shardcollection:"mydb.asset_acceptance_info",key:{_id:'hashed'}})  
      对已经有数据的表设置
       db.runCommand({shardcollection:"mydb.asset_acceptance_info",key:{"_id":1}})

非交互式创建分区表

       var url = "mongodb://admin:Tran@127.0.0.1:37017/"
       var con = new Mongo(url)
       var db = con.getDB("mydb")
       db.adminCommand({shardcollection:"mydb.test7",key:{"_id":1}})
       printjson(db.test7.getShardDistribution())

       

      

 创建分区和索引

var url = "mongodb://admin:Tran@192.168.0.103:37017/"
var con = new Mongo(url)
var db = con.getDB("mydb")


//创建分区表名称为test8
db.adminCommand({shardcollection:"mydb.test8",key:{"_id":1}})


//创建分区表的索引字段
db.test8.ensureIndex({"_id":1})
db.test8.ensureIndex({"ipv4":1})


printjson(db.test8.getShardDistribution())
printjson(db.test8.stats())
                 
View Code

      

标签:admin,mongodb,db,命令,url,交互式,test8,var,mydb
来源: https://www.cnblogs.com/yxh168/p/16393982.html