1.安装 sudo brew install mongodb mkdir /data/{db,mongodblog}

启动: sudo mongod --dbpath /data/db --logpath /data/mongodblog/mongod.log --logappend --fork

2.查看数据库 show dbs;

3.执行 "db" 命令可以显示当前数据库对象或集合 db;

4.进入指定数据库 use local;

5.创建数据库: use hyh; (不存在则自动创建)

注意: 在 MongoDB 中,集合只有在内容插入后才会创建! 就是说,创建集合(数据表)后要再插入一个文档(记录),集合才会真正创建

6.插入数据 db.hyh.insert({"name": "xxx教程"});

7.删除数据库 use hyh; db.dropDatabase(); (分两步,先进入数据库,在删除)

8.查看集合 show tables; hyh

9.删除集合 db.hyh.drop();

10.创建集合 db.createCollection("runoob");

11.插入数据自动创建集合 db.collection.insert({"name": "xx教程"});

12.删除集合 db.runoob.drop();

13.插入数据 db.col.insert({title: 'Mongodb 教程',description: 'MongoDB 是一个Nosql 数据库',by: '菜鸟教程', url: 'www.runoob.com', tags: ['mongodb','database','Nosql'],likes: 100}); 注: 先创建col集合,在插入数据

14.查看已插入的文档 db.col.find();

15.数据定义为变量插入: document=({title: 'MongoDB 教程',description: 'MongoDB 是一个 Nosql 数据库',by: '菜鸟教程',url: 'http://www.runoob.com',tags: ['mongodb', 'database', 'NoSQL'],likes: 100});

db.col.insert(document);

16.更新 db.col.update({'title': 'MongoDB 教程'},{$set:{'title': 'MongoDB'}});

第一个参数,匹配查询,第二哥参数修改

17.多条更新 db.col.update({'title': 'Mongodb 教程'},{$set:{'title': 'MongoDB'}},{multi:true});

18.save方法修改 db.col.save({"_id": ObjectId("5cbd5d7c8415864ca4ef9502"),"title" : "MongoDB","description" : "MongoDB 是一个 Nosql 数据库","by" : "Runoob","url" : "http://www.runoob.com","tags": ["mongodb", "NoSQL"], "likes": 110}); 根据_id更新整个文档

19.更多更新 只更新第一条记录: db.col.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );

全部更新: db.col.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true );

只添加第一条: db.col.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false );

全部添加进去: db.col.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true,true );

全部更新: db.col.update( { "count" : { $gt : 15 } } , { $inc : { "count" : 1} },false,true );

只更新第一条记录: db.col.update( { "count" : { $gt : 10 } } , { $inc : { "count" : 1} },false,false );

20.删除文档 db.col.remove({'title': 'MongoDB'}); 匹配参数并删除,默认删除所有匹配的文档,

db.col.remove({'title': 'MongoDB'}, {'justOne': true}); # 删除一条数据

21.查询文档 db.col.find({"by": "菜鸟教程", "title":"MongoDB 教程"}).pretty();

or查询 db.col.find({$or:[{"by":"菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty(); 满足{"by":"菜鸟教程"} 或者{"title": "MongoDB 教程"}

and 和or查询,类似sql语句'where likes>50 AND (by = '菜鸟教程' OR title = 'MongoDB 教程')' db.col.find({"likes": {$gt:50}, $or: [{"by": "菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty();

22.条件操作符 (>) 大于 - $gt (>=) 大于等于 - $gte (<) 小于 - $lt (<= ) 小于等于 - $lte db.col.find({likes: {$gt:100}});

db.col.find({likes: {$lt:200,$gt:100}});

23.创建索引 db.col.createIndex({"title":1})

24.mongo开通只读账号 db.createUser({user:"readonly",pwd:"xxxxxx",roles:[{role:"read",db:"admin"}]})