1. 安裝MongoDB服務(wù)器:
brew install mongodb
2. 配置MongoDB服務(wù)器環(huán)境:
mongod --dbpath xxx
然后MongoDB服務(wù)器就會運(yùn)行
3. nodejs安裝MongoDB客戶端package
在項(xiàng)目目錄運(yùn)行npm install mongodb
4. 下面的代碼可以插入一些數(shù)據(jù):
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("runoob");
var myobj = [
{ name: '菜鳥工具', url: 'https://c.runoob.com', type: 'cn'},
{ name: 'Google', url: 'https://www.google.com', type: 'en'},
{ name: 'Facebook', url: 'https://www.google.com', type: 'en'}
];
dbo.collection("runoob").insertMany(myobj, function(err, res) {
if (err) throw err;
console.log("插入的文檔數(shù)量為: " + res.insertedCount);
db.close();
});
});
5. 查看數(shù)據(jù)庫
在mac console運(yùn)行mango
show dbs可以查看有哪些數(shù)據(jù)庫:
> show dbs
admin 0.000GB
local 0.000GB
runoob 0.000GB
切換數(shù)據(jù)庫到我們創(chuàng)建的
> use runoob
switched to db runoob
查看有哪些表:
> show tables
runoob
查看表中內(nèi)容:
> db.runoob.find()
{ "_id" : ObjectId("5a8fd4bb98acb35f2cea71dd"), "name" : "菜鳥工具", "url" : "https://c.runoob.com", "type" : "cn" }
{ "_id" : ObjectId("5a8fd4bb98acb35f2cea71de"), "name" : "Google", "url" : "https://www.google.com", "type" : "en" }
{ "_id" : ObjectId("5a8fd4bb98acb35f2cea71df"), "name" : "Facebook", "url" : "https://www.google.com", "type" : "en" }
6.基本命令行:
1)啟動mongodb
命令:mongod --dbpath [你的mongodb數(shù)據(jù)存放的目錄
然后另開一個標(biāo)簽輸入:mongo
前提是你已經(jīng)將mongodb添加到環(huán)境變量中,否則需到mongodb安裝目錄的bin文件夾下去執(zhí)行以上命令
2)顯示mongodb中有哪些數(shù)據(jù)庫
show dbs
3)顯示當(dāng)前正在使用的數(shù)據(jù)庫
db
4)選擇使用的數(shù)據(jù)庫
use 你要使用的數(shù)據(jù)庫名
5)登陸你要使用的數(shù)據(jù)庫
db.auth(username,password) username為用戶名,password為密碼
6)查看當(dāng)前數(shù)據(jù)庫有哪些表
db.getCollectionNames()
7)顯示數(shù)據(jù)庫有哪些操作
db.help()
8)查看數(shù)據(jù)庫下的表有哪些操作
db.CollectionName.help() CollectionName為要操作的表,以下CollectionName均為表名
9)查詢操作
db.CollectionName.find({}).pretty() 大括號里是查詢條件,pretty()以格式化的形式輸出
db.CollectionName.find({},{}).pretty() 第一個大括號為查詢條件,第二個大括號為要輸出的字段,要輸出的字段就將其值設(shè)為1,沒寫的字段默認(rèn)為不輸出,_id字段默認(rèn)為總是輸出,如果不想輸出就將其值設(shè)為0
db.CollectionName.find({}).count() 輸出查詢到的數(shù)據(jù)的條數(shù)
10)特殊查詢條件
$gt 大于
$lt 小于
$gte 大于等于
$lte 小于等于
$elemMatch 嵌套查詢值為列表
11)刪除數(shù)據(jù)
db.CollectionName.remove({}) 大括號為條件
12)刪除表
db.CollectionName.drop()
13)建索引
db.CollectionName.ensureIndex({}) 大括號里為要建索引的字段名,1為升序,-1為降序
14)插入數(shù)據(jù)
db.CollectionName.insert({})
15)更新數(shù)據(jù)
db.CollectionName.update({},{}) 第一個大括號為更新條件,第二個為更新的內(nèi)容,$set為更新原有數(shù)據(jù),$inc為插入新數(shù)據(jù)