今天要談的環境建置,這邊使用的是 MongoDB 作為 Database ,資料總是要找個家,有個儲存的地方,而今天要介紹的就是使用 MongoHQ。
MongoHQ 環境 - Node.js 12 Day
今天要談的環境建置,這邊使用的是 MongoDB 作為 Database ,資料總是要找個家,有個儲存的地方,而今天要介紹的就是使用 MongoHQ。
MongoHQ 是一個 MongoDB service provider ,平常使用上覺得穩定度是蠻高的,另外一方面是為了不用自己安裝 MongoDB 服務,重點在於 MongoHQ 提供了的免費使用空間。
https://www.mongohq.com/pricing
可以從這個頁面看到付費的準則,在 MongoHQ 裡面,提供了 512 空間給予免費使用,當然超過之後,就需要開始付費,不過在這之前,是不會要求填寫任何 credit number ,因此可以大方的安心使用。
申請、新建 Database
一開始的步驟,當然是註冊帳號,Sign up 之後,到 email 收信,核准權限之後,就可以登入開始使用,
login in
登入之後的管理 portal ,開始使用之前需要增加一個 Database,
Add Database
接著進入選擇 Database 的畫面,這邊 MongoHQ 提供了許多不同的方案,包含透過 MongoHQ 申請 AWS / Joyent 的服務等,不過這邊我只選擇免費的方案,
Sandbox -> 輸入 Database name -> Create Database
這邊申請一個 test 的 database。
建立 User
前面我們 Sign up 主要是建立 MongoHQ 的 portal 管理帳號,可是剛剛建立的 mongodb ,大部分都會透過遠端連線進行存取,因此接下來要建立帳號密碼,用來登入 database。
點進去剛才新生請的 Database ,選左手邊的
Admin -> Users
在裡面對話框顯示著
db.addUser('username','password')
將 username, password 改掉,之後點下 Add user
輸入成功,底下的 Users 列表,就會多出一個 user.
接著我們就可以開始使用 URI 來進行 MongoDB 的存取。
mongodb://<user>:<password>@alex.mongohq.com:10046/mongoDBname
Node.js connect to MongoDB
最後這邊要跟大家講解一下怎麼使用 node.js 與 mongoDB 連線,從上面可以得知,從 mongoHQ 申請過後,會給予一個 URI,最後我們可以透過這個 URI 與 node.js 結合。
mongoDB 已經有提供 node.js 原生的 client module,這邊就直接使用,
npm install mongodb
之後開始編輯程式,設定為 mongo-connect.js
var mongo = require('mongodb');
var mongostr = 'mongodb://[user]:[pwd]@alex.mongohq.com:10046/[dbname]';
mongo.connect(mongostr, {}, function(error, db) {
if ( ! error)
console.log("connected, db: " + db);
});
只要將上面的範例程式,將 user, pwd, dbname 這三個部分,修改為在 mongoHQ 裡面使用的資料即可。
接著就是執行程式連線看看,
node mongo-connect.js
正確執行的話,最後會出現結果為
connected, db: [object Object]
結語
MongoDB 是一種 nosql 結構的 database ,在快速存取的狀況下,是需要 nosql 的結構作為資料儲存搭配,特別是在 Node.js 這種開發語言上, mongoHQ 提供了 512 的空間給予開發者作為免費使用,對於初期運作來說已經很足夠,在這邊推薦 MongoHQ 給各位,線上環境建置就到這邊告一段落。
明天開始將繼續朝向 Node.js Web 應用開發之路。