如何使用 cygwin 在 Node.js 中从头开始实现 mongodb

发布于 2024-11-16 14:39:14 字数 388 浏览 1 评论 0原文

如何使用 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

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

How would you implement an asynch mongodb using vistax64/cygwin/node.js from scratch which resembles the original shell?

When I try tutorials, I get things all very similar too:

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

I just need any advice to install from scratch (just node and npm) a mongodb driver, preferably without using network functions, and close to the original shell.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

逆夏时光 2024-11-23 14:39:14

我通过执行以下操作来完成此工作:

  • 在 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", <您的端口>, {auto_reconnect: true}, {} ));
      this.db.open( 函数(err, db) { 
            sys.puts("错误:" + err) ;
        }
    

如果没有错误,请使用“show dbs”检查 mongo 控制台,您应该会在其中看到一个名为“my-db-name”的新数据库。另一件事:在 Windows 中“以管理员身份”运行 cygwin,我不确定这是否重要,但以防万一。

希望有帮助,
-fs

I got this working by doing the following:

  • In cygwin: Install Node and npm
    (node package manager) and install
    ExpressJS, Jade and whatever else
    you'd like.
  • In Windows: download
    and install mongoDB. Start it running
    with "mongod" and note the port it
    listens on. Then test from the
    console using "mongo". All should
    work within windows before trying
    from Cygwin.
  • In cygwin: Install a
    mongo driver using "npm install
    mongodb"
  • from your javascript
    code, connect to the DB:

    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 ) ;
        }
    

If you get no errors, check in the mongo console with "show dbs" you should see a new DB named "my-db-name" in there. One more thing: run cygwin "as administrator" in windows, I'm not sure if it matters but just in case.

Hope that helps,
-fs

此生挚爱伱 2024-11-23 14:39:14

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

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

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

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

Just download and install the windows 64 bit version of MongoDB from the official website.

Run it normally on windows (outside of cygwin).

You will still be able to connect from nodejs within cygwin.

The installation of mongodb will also come with the shell application so you can run mongodb commands directly to the database.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文