1、启动MongoDB
mongod.exe --dbpath d:\mogodb\data\db
2、启动MongoDB的操作终端
mongo.exe
3、测试
db
show dbs
4、启动停止服务
net start MongoDB Server
net stop MongoDB Server
5、向order集合里插入数据
db.order.insert({orderNo:10,num:2,amount:45.24})
插入多条
db.order.insert([{orderNo:10010,num:1,amount:45.21,userName:'yucaifu'},
{orderNo:10010,num:1,amount:45.21,userName:'yucaifu'}])
6、删除集合里的一条数据
db.order.remove({orderNo:10})
db.order.deleteOne( { status: "D" } )
db.order.deleteMany({ status : "A" })
7、删除指定集合
db.order.drop()
8、按字段值查询数据
db.getCollection('order').find({userName:'yu'})
9、创建/切换数据库 不存在则创建否则切换到此库
use databaseName
10、查看所有数据库
show dbs
11、删除当前数据库
db.dropDatabase()
12、创建集合
db.createCollection('集合名称')
创建固定大小的集合
db.createCollection('order', {
capped : true, //当超过最大字节后会自动覆盖最前面的数据
autoIndexId : true,//自动在 _id 字段创建索引
size : 6142800,//最大字节数
max : 10000 //集合最大文档数据
} )
14、查看已有的集合
show collections
15、更新记录
db.order.update(
{userName:'cai'},
{$set:{userName:'caifu',amount:120.00}},
{multi: true}//false只更新最前面一条,true更新所有匹配的记录
)
方法二 更新单条
db.order.updateOne({"name":"abc"},{$set:{"age":"28"}})
方法三更新多条
db.order.updateMany({"name":"abc"},{$set:{"age":"28"}})
16、替换指定id的记录
db.order.save({_id:ObjectId("5b37479cbe2271c819b947c4"),orderNo:900001,num:66,amount:100.00,userName:'test'})
17、查询条件
and查询
db.col.find({"by":"菜鸟教程", "title":"MongoDB 教程"})
or查询
db.col.find(
{
$or: [
{key1: value1}, {key2:value2}
]
}
)
and or 联合使用
db.col.find({"userName": 'yu', $or: [{"by": "菜鸟教程"},{"title": "MongoDB 教程"}]})
18、指定返回字段
db.collection.find(query, {title: 1, by: 1}) // inclusion模式 指定返回的键,不返回其他键
db.collection.find(query, {title: 0, by: 0}) // exclusion模式 指定不返回的键,返回其他键
db.collection.find(query, {_id:0, title: 1, by: 1}) // 正确
19、排序sort
1-升序 -1降序
db.order.find({num:1}).sort({"orderNo":-1})
20、limit
db.order.find({num:1}).limit(3)
21、跳过记录数skip
db.order.find({num:1}).skip(5)
21、创建索引1-升序创建索引 -1降序创建索引
db.order.createIndex({"orderNo":1})
22、备份数据库
mongodump -h dbhost -d dbname -o dbdirectory
mongodump -h 127.0.0.1:27017 -d test -o d:\data\dump
23、导入备份数据
mongorestore -h <hostname><:port> -d dbname <path>
mongorestore -h 127.0.0.1:27017 -d test2 d:\data\dump\test
24、查看mongodb运行状态 在bin目录下运行mongostat
D:\mogodb\bin>mongostat
25、统计每个集合的读写耗时统计mongotop
D:\mogodb\bin>mongotop
26、添加字段
db.order.update({}, {$set: {createTime:""}}, {multi: true})
27、删除字段
db.order.update({},{$unset:{createTime:""}},false, true)