【问题标题】:How to implement mongodb within node.js from scratch using cygwin如何使用 cygwin 从头开始​​在 node.js 中实现 mongodb
【发布时间】:2011-09-18 00:25:04
【问题描述】:

您将如何使用 vistax64/cygwin/node.js 从头开始​​实现类似于原始 shell 的异步 mongodb?

当我尝试教程时,我得到的东西也非常相似:

admin@RainComputer ~/nodeProjects
$ node dbtest.js
mongo://localhost:27017: Error: EPERM, Operation not permitted
Finished scanning... primary? no
undefined
mongo://localhost:27017: Disconnected

我只需要任何建议来从头安装(仅 node 和 npm)一个 mongodb 驱动程序,最好不使用网络功能,并且接近原始 shell。

【问题讨论】:

    标签: mongodb node.js cygwin


    【解决方案1】:

    只需从官网下载并安装windows 64位版本的MongoDB即可。

    在 windows 上正常运行(在 cygwin 之外)。

    您仍然可以从 cygwin 中的 nodejs 进行连接。

    mongodb 的安装也将附带 shell 应用程序,因此您可以直接对数据库运行 mongodb 命令。

    【讨论】:

      【解决方案2】:

      我通过执行以下操作得到了这个工作:

      • 在 cygwin 中:安装 Node 和 npm (节点包管理器)并安装 ExpressJS、Jade 和其他任何东西 你喜欢。
      • 在 Windows 中:下载 并安装 mongoDB。开始运行 使用“mongod”并记下它的端口 听着。然后从测试 控制台使用“mongo”。都应该 在尝试之前在 Windows 中工作 来自赛格温。
      • 在 cygwin 中:安装 mongo 驱动程序使用“npm install 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

      【讨论】:

        猜你喜欢
        • 2010-11-05
        • 1970-01-01
        • 1970-01-01
        • 2017-09-23
        • 2011-01-20
        • 2021-08-09
        • 1970-01-01
        • 2018-07-08
        • 1970-01-01
        相关资源
        最近更新 更多