-- 《Node.js入門經典》,由George Ornbo創作,是一本極好的Node.js入門讀物。本文為讀該書時的一些筆記。
MongoDB是Node.js中非常流行的NoSQL數據庫。
NoSQL = Not Only SQL
MongoDB是面向文檔的數據庫,不遵循關系數據庫連接在一起的關系模型。MongoDB執行關系數據庫的大多數功能,并且,旨在提供高度的可用性和可擴展性。
安裝MongoDB
去官網下載安裝包安裝MongoDB:
https://www.mongodb.org/downloads#production
還會友情提示,32位機最大2GB存儲,如果需要更大的存儲,則需要轉向64位機,能夠獲得2GB*2GB的存儲空間。
Mongoose模塊
Node.js中連接MongoDB,采用第三方模塊連接,Mongoose是一個功能齊備的模塊,也比較流行。
在實際開發中,要將Mongoose模塊添加到依賴中,package.json中:
{
"name": "your-application",
"version": "0.0.1",
"description": "mongodb test.",
"private": true,
"dependencies": {
"mongoose": ">=2.3.1"
}
}
記得要
npm install
,否則將沒有依賴模塊被安裝。
沒有"private": true
時,會認為你發布了一個共有的應用,如果你沒有readme文檔、證書等等,會發出警告,聲明為私有應用則無此警告。不過出現warn也無妨,不影響應用的依賴安裝和運行。但作為一個良好的開發者,應當讓自己的應用不存在任何Error和Warn!
使用時,請求該模塊:
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/your_database');
啟動MongoDB
進入到MongoDB安裝目錄下,啟動數據庫服務:
mongod --dbpath D:\Mongodb\ --storageEngine=mmapv1
服務啟動成功后,將會默認監聽27017端口。可以嘗試使用瀏覽器訪問這個端口,會有相應的回應。
測試mongoose連接
新建js文件,采用以下代碼測試:
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/mongodb_test', function(err) {
if(!err) {
console.log('connected to MongoDB!');
} else {
throw err;
}
});
在使用前,需要安裝Mongoose模塊:
npm install mongoose
也可以使用package.json來管理依賴模塊。
之后運行該腳本:
node mongodb_test.js
將會看到連接成功提示。
連接失敗時,將會有異常拋出,大多數失敗的情況是你沒有正確啟動MongoDB,前面講到的啟動MongoDB服務,開啟后不能關閉CMD。