Подтвердить что ты не робот

Проблемы с запуском примеров в Meteor

Я тестирую примеры Meteor, и это то, что я вижу, когда я запускаю meteor в примерах todos:

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

Кто-то помогает? Спасибо!

4b9b3361

Ответ 1

У меня была та же проблема. Исправлено:

ПРЕДУПРЕЖДЕНИЕ: это удаляет вашу локальную базу данных:

Метеор reset

Ответ 2

Как упоминалось в mKriss, попробуйте

meteor reset

Если вы получите эту ошибку:

reset: Meteor is running.

This command does not work while Meteor is running your application.
Exit the running meteor development server.

Затем найдите метеор в ваших запущенных процессах:

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

Теперь все работает!

Ответ 3

У меня была та же проблема. Просто удалите .meteor/local/db/mongod.lock в папке проекта метеорита. Метеор должен нормально работать.

Надеюсь, это помогло!:)

Ответ 4

Не уверен, что это имеет отношение к вашей проблеме, но я получил эту ошибку и, в конце концов, обнаружил, что она была вызвана тем, что у меня был каталог приложений в общем доступе NFS (я работаю на Ubuntu в VirtualBox), которому mongodb не нравится. Помещение моего приложения в мой домашний каталог устраняет проблему.

Ответ 5

Есть несколько способов обойти это, вопрос не показал, как использовать mongod, поэтому я собираюсь запустить, как получить более подробную информацию об ошибке. meteor reset может работать, но не всегда, и он очистит ваши данные приложений, если он работает.

Основная проблема - это метеорит, очень не относящийся к описанию, когда дело доходит до отображения данных, поэтому я бы посоветовал получить немного более подробную информацию об ошибке, поскольку это может буквально любая ошибка mongodb там. Приведенные ниже шаги должны воспроизводить ошибку с большей детализацией, чтобы помочь диагностировать, что проблема с корнем

Найти, где Meteor устанавливает mongodb

Если у вас есть инструмент mongod (загружаемый из http://mongodb.com), в противном случае используйте тот, который установлен с метеор. Просто будьте осторожны, вы не получите слишком новую версию, которая обновляет вашу старую базу данных, а затем метеорит более старый mongodb не сможет ее понять.

обычно (но не всегда) в

/usr/local/meteor/mongodb/bin/mongod (OS X)

/usr/lib/meteor/mongodb/bin/mongod ( Red Hat/Debian)

C:\Program Files\Meteor\mongodb\bin\mongod.exe( Windows через порт Tom Wijsman)

Запустить базу данных Meteor вручную с помощью mongodb

Итак, мы собираемся использовать это для ручного запуска mongodb в базе данных ваших приложений mongodb:

В вашем каталоге проектов с помощью приложения терминала/командной строки

cd .meteor
cd local
/usr/local/meteor/mongodb/bin/mongod --dbpath ./

Если ваш путь mongod - это что-то другое, используйте это вместо этого, то это работает на OS X.

Проанализируйте вывод, чтобы найти основную причину проблемы

Теперь 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 больше, чем метеорной, посмотрите на ошибку, которую вы получите здесь, на stackoverflow, и если вы не можете найти ее, вставите вопрос и стайки полезных людей надеюсь, готовы помочь:)

Ответ 6

У меня очень простое решение:

export LC_ALL="en_US.UTF-8"

и запустите meteor

Если это нормально, вы можете добавить эту строку в

sudo vim /usr/local/bin/meteor

Ответ 7

Если метеорит reset не работает для вас, проверьте использование дискового пространства.

Если у вас нет свободного места на диске, вы получите эту ошибку. MongoDB занимает около 450 МБ, поэтому создание нескольких проектов может быстро заполнить раздел.

Ответ 8

Если ваш проект meteor находится в папке DropBox, проверьте имена файлов, которые содержат слова conflicted copy в .meteor/local/db/ в папке проекта, и удалите их. Это должно освободить Mongod для запуска.

Ответ 9

Это помогло мне запустить meteor в Google Compute Engine:

export LC_ALL=C

Ответ 10

Следите за акцентами на пути ваших проектов.

..\Système\MyMeteorProject не будет работать, .. \System\MyMeteorProject будет работать.

Ответ 11

Простите очевидное, но не показывает ли netstat -antep | grep 3002 что-нибудь? (если вы на * nix)

Ответ 12

Я знаю, что этот вопрос довольно старый, однако я просто столкнулся с этой проблемой и подумал, что это может быть полезно кому-то. То, что работало в моем случае, состояло в том, чтобы запустить "sudo meteor"

Ответ 13

Я мог бы решить проблему в Meteor 1.2.1 и восстановить мои данные, удалив файл блокировки, скопировав оставшиеся данные .meteor/local/db/во временное место (вы можете назвать это резервной копией), введите meteor reset и скопируйте резервные данные обратно в .meteor/local/db/. Все по-прежнему работало.

Ответ 14

для тех, кто использует бродягу и не хочет meteor reset, очистка db локального каталога вашего метеорита разрешила конфликт. от терминала:

rm -rf .meteor/local/db/

Ответ 15

Thu Apr 12 19:27:39 listen(): bind() failed errno:98 Address already in use for port: 27017

Что-то еще уже использует порт 27017, поэтому запуск mongo не работает. Начать mongo на другом порту или убить любой процесс, используя 27017.

Ответ 16

Meteor reset команда не работала для меня в DOS

Я удалил все файлы и папку под <projectfolder>/.meteor/local/db to Recycle Bin

**DOS Log below:**

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

D:\Meteor\todos>

Ответ 17

Я обнаружил ту же проблему конфликта при синхронизации. Я использовал Ubuntu One, и в .meteor/local/db/с добавлением "u1_conflicted" было создано множество новых файлов. Я удалил те, и те, что были в .meteor/local/db/journal, и были резервными и работающими.

Ответ 18

Я мог восстановить ошибку, удалив блокировку локального Mogo db.

Шаги по удалению блокировки db:

  • Перейдите в каталог приложений (где у вас есть файлы приложений Meteor)
  • Удалить файл $ rm.meteor/local/db/mongod.lock

ПРИМЕЧАНИЕ: $meteor reset

ПРЕДУПРЕЖДЕНИЕ: метеор reset стирает все в вашей локальной базе данных.

Ошибка, если приложение Meteor все еще работает в фоновом режиме. Заблокированное блокирование не освобождается запущенным приложением или из-за неправильного завершения работы системы/приложения и недоступно для второго экземпляра того же приложения.

Поэтому старайтесь каждый раз оставлять приложение.

Ответ 19

Я получил это сообщение об ошибке:

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.

... и оказалось, что у меня есть экземпляр одного и того же приложения, работающего на другом порту, поэтому добавьте "убедитесь, что у вас нет других экземпляров приложения, работающего на альтернативном порту" в списке вещей, которые могут вызвать эту ошибку.

Ответ 20

Такая же проблема, когда я пытался создать свой проект в общей папке VMWare, связанной с папкой хоста...

cd/mnt/hgfs/Folder_in_C_host_drive

Метеор создать myapp

cd myapp

метеора

Неожиданный код выхода mongo 100. Перезагрузка.

...

Решено, переместив проект в стандартную папку в моей файловой системе... Общие папки VMWare не могут обрабатывать защиту файлов, а любые файлы root: root... вот почему это закончилось тем, что ошибки MongoDB

Ответ 21

Если вы используете Vagrant, MongoDb не будет запускаться в общем каталоге Vagrant: https://gist.github.com/gabrielhpugliese/5855677

Если вы используете Windows для своей работы, Meteor теперь имеет установщик Windows: http://win.meteor.com/

Ответ 23

Я снова столкнулся с ошибкой Unexpected mongo exit code 100. Restarting.. Я в конечном итоге ответил на свой собственный вопрос здесь, который, похоже, сделал трюк для многих, столкнувшихся с одной проблемой Важно, что это не требует meteor reset, который вытирает базу данных. Это простое и очень быстрое исправление на три шага, поэтому я рекомендую попробовать его перед некоторыми более сложными предложениями.

Ответ 24

У меня была та же проблема. Исправлено:

Исправлено:

  • каталог вашего проекта
  • перенаправление на каталог .meteor > .local > .db
  • в .db папку удалить все файлы здесь
  • выполнить команду "Метеор"

Он отлично работает для меня. Поймите это, это действительно помогает.

Ответ 25

Стать суперпользователем:

# meteor --allow-superuser