Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 在Meteor中运行示例的问题_Mongodb_Meteor - Fatal编程技术网

Mongodb 在Meteor中运行示例的问题

Mongodb 在Meteor中运行示例的问题,mongodb,meteor,Mongodb,Meteor,我正在测试Meteor示例,这是我在todos示例中运行Meteor时看到的: Unexpected mongo exit code 100. Restarting. Unexpected mongo exit code 100. Restarting. Unexpected mongo exit code 100. Restarting. Can't start mongod. Check for other processes listening on port 3002 or other

我正在测试Meteor示例,这是我在todos示例中运行Meteor时看到的:

Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Can't start mongod. Check for other processes listening on port 3002 or other meteors running in the same project.
如果我在命令行中运行
mongod
,就会发生这种情况:

Thu Apr 12 19:27:39 Mongo DB : starting : pid = 2686 port = 27017 dbpath = /data/db/ master = 0 slave = 0  32-bit 

** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
**       see http://blog.mongodb.org/post/137788967/32-bit-limitations for more

Thu Apr 12 19:27:39 db version v1.4.4, pdfile version 4.5
Thu Apr 12 19:27:39 git version: nogitversion
Thu Apr 12 19:27:39 sys info: Linux murphy 2.6.32.14-dsa-ia32 #1 SMP Thu May 27 16:19:20 CEST 2010 i686 BOOST_LIB_VERSION=1_42
Thu Apr 12 19:27:39 waiting for connections on port 27017
Thu Apr 12 19:27:39 listen(): bind() failed errno:98 Address already in use for port: 27017
Thu Apr 12 19:27:39 MiniWebServer: bind() failed port:28017 errno:98 Address already in use
Thu Apr 12 19:27:39   addr already in use
Thu Apr 12 19:27:39 warning: web admin interface failed to initialize on port 28017

有人帮忙吗?谢谢

原谅显而易见的事情,但是
netstat-antep | grep3002
有什么表现吗?(假设你在*nix上)

我也有同样的问题。固定为:

警告:这会删除本地数据库:

流星复位


端口27017已经在使用其他端口,因此mongo启动失败。在另一个端口上启动mongo,或者先杀死正在使用27017的任何进程。

正如Mkris所提到的,请尝试

meteor reset
如果出现此错误:

reset: Meteor is running.

This command does not work while Meteor is running your application.
Exit the running meteor development server.
然后在运行过程中查找meteor:

ps -x | grep meteor
这给了我以下输出:

14877 pts/0    Sl     0:02 /usr/lib/meteor/mongodb/bin/mongod --bind_ip 127.0.0.1 --port 3005 --dbpath /home/sam/proto/.meteor/local/db
15022 pts/0    S+     0:00 grep --color=auto meteor
于是我做了:

kill -s KILL 14877
meteor reset
meteor

现在一切都好了

不确定这是否与您的问题有关,但我得到了这个错误,并最终发现是因为我的应用程序目录位于NFS共享中(我在VirtualBox中的Ubuntu上运行),而mongodb不喜欢它。将我的应用程序放在我的主目录中解决了这个问题。

我也遇到了同样的问题。只需删除meteor项目文件夹中的
.meteor/local/db/mongod.lock
。流星应该正常运行


希望有帮助!:)

流星重置
命令在DOS中对我不起作用

我将
/.meteor/local/db下的所有文件和文件夹都删除到回收站

**DOS Log below:**

D:\Meteor\todos>meteor reset
Project reset.

D:\Meteor\todos>

如果meteor项目位于DropBox文件夹中,请在项目文件夹中的
.meteor/local/db/
中检查包含单词
冲突副本的文件名,然后将其删除。这将释放Mongod来运行。

如果meteor reset对您不起作用,请检查您的磁盘空间使用情况


如果没有任何可用磁盘空间,将出现此错误。MongoDB占用了大约450MBs的空间,因此创建几个项目可以很快填满一个分区。

有几种方法可以解决这个问题,问题没有说明如何使用
mongod
,因此我将详细介绍如何获得有关错误的更多细节
meteor reset
可能会起作用,但并不总是这样&如果确实起作用,它会清除你的应用程序数据

核心问题是meteor在显示数据时非常不规范,因此我建议获得更多关于错误的详细信息,因为它可能会导致任何mongodb错误。以下步骤应更详细地再现错误,以帮助诊断根本问题

查找Meteor在哪里安装mongodb

如果您有
mongod
工具(可从下载),则使用随meteor一起安装的工具。只是要小心,不要得到更新旧数据库的太新版本,否则meteor的旧mongodb将无法理解它

通常(但不总是)在

/usr/local/meteor/mongodb/bin/mongod(OSX

/usr/lib/meteor/mongodb/bin/mongod(红帽/Debian

C:\ProgramFiles\Meteor\mongodb\bin\mongod.exe(通过Tom Wijsman的端口打开Windows)

使用mongodb手动运行Meteor数据库

因此,我们将使用它在您的应用程序mongodb数据库上手动运行mongodb:

在项目目录中,使用终端应用程序/命令提示符

cd .meteor
cd local
/usr/local/meteor/mongodb/bin/mongod --dbpath ./
如果您的
mongod
路径是另一个路径,请使用该路径,上述方法在OSX上有效

分析输出以找出问题的根本原因

现在,mongodb应该运行并向您提供问题的详细描述,或者运行平稳:

Mon Apr  1 23:59:55 [initandlisten] MongoDB starting : pid=84640 port=27017 dbpath=./ 64-bit  host=MacBook-Pro.local
Mon Apr  1 23:59:55 [initandlisten] 
Mon Apr  1 23:59:55 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
Mon Apr  1 23:59:55 [initandlisten] db version v2.2.1, pdfile version 4.5
Mon Apr  1 23:59:55 [initandlisten] git version: d6764bf8dfe0685521b8bc7b98fd1fab8cfeb5ae
Mon Apr  1 23:59:55 [initandlisten] waiting for connections on port 27017
查看错误可能是什么,然后解决显示的问题。它可能是许多中的一个

示例问题

如有:

exception in initAndListen: 10310 Unable to lock file: ./mongod.lock. Is a mongod instance already running?, terminating
然后重新启动计算机以终止可能正在使用该文件的任何进程,如果仍然没有帮助,请使用
meteor reset
清除
.meteor/local/db
上的目录,以便您的应用程序使用新的数据库

这些错误非常有用,例如磁盘空间不足(清除垃圾
;-)
或无法写入磁盘(权限问题-使用chmod/sudo)

非常模糊的问题


如果您发现一些非常令人困惑的问题,可能是mongodb的问题,而不是meteor的问题,请查看一下您在stackoverflow上遇到的错误,如果您找不到,请提出问题,希望成群结队的乐于助人的人愿意提供帮助:)

我在同步中发现了相同的冲突问题。我使用的是UbuntuOne,在.meteor/local/db/中创建了一堆新文件,附加了“u1_conflicted”。我删除了这些,以及.meteor/local/db/journal中的,并已备份并运行。

我有一个非常简单的解决方案:

export LC\u ALL=“en\u US.UTF-8”

然后运行
meteor

如果可以,您可以将此行添加到


sudo vim/usr/local/bin/meteor
这就是帮助我在谷歌计算引擎上运行
meteor
的原因:

export LC_ALL=C

我知道这个问题已经很老了,但是我也遇到了这个问题,我认为这可能对某些人有用。在我的例子中,运行“sudometeor”是有效的。

我可以通过删除本地Mogo数据库锁来恢复错误

删除数据库锁的步骤:

  • 导航到你的应用程序目录(你有Meteor应用程序文件的地方)
  • 删除文件$rm.meteor/local/db/mongod.lock
  • 注:$meteor重置

    警告:流星重置将删除本地数据库中的所有内容

    如果Meteor应用程序仍在后台运行,则会发生错误。正在运行的应用程序未释放Db锁,或者由于系统/应用程序关闭不当,同一应用程序的第二个实例无法使用Db锁


    所以每次都要小心退出应用程序。

    我收到了以下错误消息:

    MongoDB had an unspecified uncaught exception.
    This can be caused by MongoDB being unable to write to a local database.
    Check that you have permissions to write to .meteor/local. MongoDB does
    not support filesystems like NFS that do not allow file locking.
    
    …结果是
    MongoDB had an unspecified uncaught exception.
    This can be caused by MongoDB being unable to write to a local database.
    Check that you have permissions to write to .meteor/local. MongoDB does
    not support filesystems like NFS that do not allow file locking.
    
    rm -rf .meteor/local/db/