2011-06-19 67 views
0

你將如何實現使用vistax64/Cygwin的/ node.js的從頭它類似於原來的外殼的非同步的MongoDB從頭開始實現的node.js內的MongoDB?如何使用cygwin的

當我嘗試教程,我得到的東西都十分相似太:

[email protected] ~/nodeProjects 
$ node dbtest.js 
mongo://localhost:27017: Error: EPERM, Operation not permitted 
Finished scanning... primary? no 
undefined 
mongo://localhost:27017: Disconnected 

我只需要任何建議從頭(只是節點和NPM)一個MongoDB的驅動程序,安裝最好不使用網絡功能,並靠近原來的外殼。

回答

2

我通過以下操作得到了這個工作:

  • Cygwin中:安裝節點,NPM (節點包管理器),並安裝 ExpressJS,玉,你想其他任何 。
  • 在Windows中:下載 並安裝MongoDB的。用「mongod」啓動它運行 ,並記下它在 上監聽的端口。然後使用「mongo」從 控制檯進行測試。在嘗試使用Cygwin的 之前,所有的應該都在 之間工作。
  • Cygwin中:使用 「故宮安裝 的MongoDB」
  • 從你的JavaScript 代碼安裝 蒙戈驅動程序,連接到數據庫:

    var Db = require('../node_modules/mongodb/lib/mongodb').Db, Server = require('../node_modules/mongodb/lib/mongodb').Server, 
        ObjectID= require('../node_modules/mongodb/lib/mongodb/bson/bson').ObjectID; 
    
    ... 
    
    this.db= new Db('my-db-name', new Server("127.0.0.1", <your port here>, {auto_reconnect: true}, {})); 
        this.db.open(function(err, db) { 
         sys.puts("Error : " + err) ; 
        } 
    

如果你沒有錯誤,請檢查在帶有「show dbs」的mongo控制檯中,您應該在其中看到一個名爲「my-db-name」的新數據庫。還有一件事:在Windows中運行cygwin「作爲管理員」,我不知道它是否重要,但以防萬一。

希望有幫助, -fs

0

只需下載並從官方網站安裝Windows的MongoDB的64位版本。

運行它通常在窗口(cygwin的以外)。

你仍然可以從cygwin的的NodeJS內連接。

的MongoDB的安裝也將與殼應用,所以你可以運行MongoDB的命令直接到數據庫中。