db.auth(username, password) //数据库连接验证
db.cloneDatabase(fromhost) //从目标服务器上克隆一个数据库
db.commandHelp(name) //显示命令帮助
db.copyDatabase(fromdb, todb, fromhost) //复制数据库 fromdb源,todb目标,fromhost源数据库地址
db.createCollection(name, { size : …, capped : …, max : … } ) //创建一个数据集。相当于table
db.currentOp() //显示当前库的当前操作
db.dropDatabase() //删除数据库
db.eval(func, args) //运行服务器端代码
db.getCollection(cname) same as db['cname'] or db.cname //取得一个数据集合
db.getCollectionNames() //取得所有数据集合的名称列表
db.getLastError() //返回最后一个错误提示信息
db.getLastErrorObj() //返回最后一个错误对象
db.getMongo() //取得当前服务器的连接对象
db.getMongo().setSlaveOk() //允许连接从非master端读取数据
db.getName() //返回当前操作的数据库名称
db.getPrevError() //返回上一个错误
db.getProfilingLevel() – deprecated
db.getProfilingStatus() – returns if profiling is on and slow threshold
db.getReplicationInfo()
db.getSiblingDB(name) get the db at the same server as this one
db.isMaster() //检查replica 优先级状态
db.killOp(opid) //终止数据库当前操作
db.listCommands() 列出数据库命令
db.printCollectionStats() //返回当前数据库的数据集状态
db.printReplicationInfo() //返回replication信息
db.printSlaveReplicationInfo() //返回slave replication信息
db.printShardingStatus() //返回shard信息
db.removeUser(username) //删除用户
db.repairDatabase() //修复当前数据库
db.resetError() //重置错误
db.runCommand(cmdObj) //运行数据库命令。如果cmdObj是一个字符串,它变成{cmdObj:1}
db.serverStatus() //显示服务器状态
db.setProfilingLevel(level,<slowms>) 0=off 1=slow 2=all //设置profiling级别
db.shutdownServer() //关闭当前数据库
db.stats() //显示当前信息
db.version() //显示数据库版本
db.getMongo().setSlaveOk() //运行从replication slave服务器查询
数据集(表)操作语法
db.test.find({id:10}) //返回test数据集ID=10的数据集
db.test.find({id:10}).count() //返回test数据集ID=10的数据总数
db.test.find({id:10}).limit(2) //返回test数据集ID=10的数据集从第二条开始的数据集
db.test.find({id:10}).skip(8) //返回test数据集ID=10的数据集从0到第八条的数据集
db.test.find({id:10}).limit(2).skip(8) //返回test数据集ID=10的数据集从第二条到第八条的数据
db.test.find({id:10}).sort() //返回test数据集ID=10的排序数据集
db.test.findOne([query]) //返回符合条件的一条数据
db.test.getDB() //返回此数据集所属的数据库名称
db.test.getIndexes() //返回些数据集的索引信息
db.test.group({key:…,initial:…,reduce:…[,cond:...]})
db.test.mapReduce(mayFunction,reduceFunction,<optional params>)
db.test.remove(query) //在数据集中删除一条数据
db.test.renameCollection(newName) //重命名些数据集名称
db.test.save(obj) //往数据集中插入一条数据
db.test.stats() //返回此数据集的状态
db.test.storageSize() //返回此数据集的存储大小
db.test.totalIndexSize() //返回此数据集的索引文件大小
db.test.totalSize() //返回些数据集的总大小
db.test.update(query,object[,upsert_bool]) //在此数据集中更新一条数据
db.test.validate() //验证此数据集
db.test.getShardVersion() //返回数据集共享版本号
mongodb语法与关系型数据库SQL语法对照:
db.test.find({‘name’:'foobar’}) <==> select * from test where name=’foobar’
db.test.find() <==> select * from test
db.test.find({‘ID’:10}).count() <==> select count(*) from test where ID=10
db.test.find().skip(10).limit(20) <==> select * from test limit 10,20
db.test.find({‘ID’:{$in:[25,35,45]}}) <==> select * from test where ID in (25,35,45)
db.test.find().sort({‘ID’:-1}) <==> select * from test order by ID desc
db.test.distinct(‘name’,{‘ID’:{$lt:20}}) <==> select distinct(name) from test where ID<20
db.test.group({key:{‘name’:true},cond:{‘name’:'foo’},reduce:function(obj,prev){prev.msum+=obj.marks;},initial:{msum:0}}) <==> select name,sum(marks) from test group by name
db.test.find(‘this.ID<20′,{name:1}) <==> select name from test where ID<20
db.test.insert({‘name’:'foobar’,'age’:25}) <==> insert into test (‘name’,'age’) values(‘foobar’,25)
db.test.remove({}) <==> delete * from test
db.test.remove({‘age’:20}) <==> delete test where age=20
db.test.remove({‘age’:{$lt:20}}) <==> delete test where age<20
db.test.remove({‘age’:{$lte:20}}) <==> delete test where age<=20
db.test.remove({‘age’:{$gt:20}}) <==> delete test where age>20
db.test.remove({‘age’:{$gte:20}}) <==> delete test where age>=20
db.test.remove({‘age’:{$ne:20}}) <==> delete test where age!=20
db.test.update({‘name’:'foobar’},{$set:{‘age’:36}}) <==> update test set age=36 where name=’foobar’
db.test.update({‘name’:'foobar’},{$inc:{‘age’:3}}) <==> update test set age=age+3 where name=’foobar’