1

我正在尝试在 Windows 机器上使用 nodejs 启动一个项目。我知道 windows 不是正确的环境,但这就是我使用的!

我在使用compound server 8888. 我通过生成所有文件

compound init photo --tpl jade --css less --db mongodb
cd photo
npm install -l
compound generate crud album title images createdAt:date

在我意识到您可以将复合安装为复合或复合js之后,这一代运行良好(安装了复合js时它不起作用,但是当我安装复合时它起作用了 - 我认为它们都是相同的 :-/)。

但是当我尝试使用 compound server 8888 它启动服务器时,会出现以下错误:

在开发环境中监听 0.0.0.0:8888 的复合服务器

{PATH}\photo\node_modules\jugglingdb-mongodb\lib\mongodb.js:74
        if (err) 抛出错误;
                       ^
错误:无法连接到 [localhost:27017]
    在 Server.connect.connectionPool.on.server._serverState ({PATH}\photo\node_modules\jugglingdb-mongodb\node_modules\mongodb\lib\mongodb\connection\server.js:564:74)
    在 EventEmitter.emit (events.js:126:20)
    在 connection.on._self._poolState ({PATH}\photo\node_modules\jugglingdb-mongodb\node_modules\mongodb\lib\mongodb\connection\connection_pool.js:124:15)
    在 EventEmitter.emit (events.js:99:17)
    在 Socket.errorHandler ({PATH}\photo\node_modules\jugglingdb-mongodb\node_modules\mongodb\lib\mongodb\connection\connection.js:465:10)
    在 Socket.EventEmitter.emit (events.js:96:17)
    在 Socket._destroy.self.errorEmitted (net.js:329:14)
    在 process.startup.processNextTick.process._tickCallback (node.js:244:9)

显然它无法连接到 MongoDB,但为什么呢?我是否必须在 MySQL 之类的地方启动这个数据库?

任何帮助,将不胜感激。
谢谢!

4

1 回答 1

2

您需要先启动 MongoDB 守护程序。为此,请转到 MongoDB 文件所在的目录并mongod.exe在该bin文件夹下运行。

换句话说,运行:

<MONGO_HOME>\bin\mongod.exe

要确保主要的 MongoDB 数据库进程正在运行,请运行mongo.exe(Mongo Shell),它也位于同一文件夹下。如果它成功连接并用等待您命令的 shell 迎接您,那么您的数据库已启动并正在运行。返回并重新启动复合服务器以查看它是否有帮助。如果没有,请检查您的数据库连接设置。

于 2013-03-03T23:58:44.917 回答