Новичок в MongoDB не может запустить command mongo

#windows #mongodb

#Windows #mongodb — монгодб #mongodb

Вопрос:

Я пытался запустить MongoDB:

    E:mongobin>mongod
    mongod --help for help and startup options
    Sun Nov 06 18:48:37
    Sun Nov 06 18:48:37 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
    Sun Nov 06 18:48:37
    Sun Nov 06 18:48:37 [initandlisten] MongoDB starting : pid=7108 port=27017 dbpath=/data/db 32-bit host=pykhmer-PC
    Sun Nov 06 18:48:37 [initandlisten]
    Sun Nov 06 18:48:37 [initandlisten] ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
    Sun Nov 06 18:48:37 [initandlisten] **       see http://blog.mongodb.org/post/137788967/32-bit-limitations
    Sun Nov 06 18:48:37 [initandlisten] **       with --journal, the limit is lower
    Sun Nov 06 18:48:37 [initandlisten]
    Sun Nov 06 18:48:37 [initandlisten] db version v2.0.1, pdfile version 4.5
    Sun Nov 06 18:48:37 [initandlisten] git version: 3a5cf0e2134a830d38d2d1aae7e88cac31bdd684
    Sun Nov 06 18:48:37 [initandlisten] build info: windows (5, 1, 2600, 2, 'Service Pack 3') BOOST_LIB_VERSION=1_42
    Sun Nov 06 18:48:37 [initandlisten] options: {}
    Sun Nov 06 18:48:37 [initandlisten] exception in initAndListen: 10296 dbpath (/data/db) does not exist, terminating
    Sun Nov 06 18:48:37 dbexit:
    Sun Nov 06 18:48:37 [initandlisten] shutdown: going to close listening sockets...
    Sun Nov 06 18:48:37 [initandlisten] shutdown: going to flush diaglog...
    Sun Nov 06 18:48:37 [initandlisten] shutdown: going to close sockets...
    Sun Nov 06 18:48:37 [initandlisten] shutdown: waiting for fs preallocator...
    Sun Nov 06 18:48:37 [initandlisten] shutdown: closing all files...
    Sun Nov 06 18:48:37 [initandlisten] closeAllFiles() finished
    Sun Nov 06 18:48:37 dbexit: really exiting now

E:mongobin>mongo
MongoDB shell version: 2.0.1
connecting to: test
Sun Nov 06 18:48:42 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
exception: connect failed

E:mongo>ls
GNU-AGPL-3.0  README  THIRD-PARTY-NOTICES  bin  data
  

Я смотрел на http://www.mongodb.org/display/DOCS/Quickstart Windows
и следуя инструкциям.
Кто-нибудь может сказать мне, в чем проблема с запуском MongoDB (я использую Windows 7)?

Комментарии:

1. Отклонено, поскольку чтение журналов не может требовать слишком многого, даже от кого-то, кто новичок. В строке непосредственно перед началом завершения работы четко указано, что происходит.

Ответ №1:

После установки MongoDB вам следует вручную создать папку с данными.

По умолчанию MongoDB будет хранить данные в /data/db, 
но это не приведет к автоматическому созданию этого каталога. Чтобы создать ее, выполните:

$ sudo mkdir -p /data/db/
$ sudo chown `id -u` /data/db

Вы также можете указать MongoDB использовать другой каталог данных, 
с параметром --dbpath.

Для получения более подробной информации перейдите на страницу MongoDB wiki.

Комментарии:

1. Это должно быть ответом — это сработало и было более полезным, чем «Прочитать документацию».

2. Также следует отметить, что я только сегодня узнал об этом, если вы запустите mongo с, service mongodb start он автоматически считывает /etc/mongod.conf файл, и вам не нужно указывать переменные —dbpath или —config при каждом запуске! Это определенно работает для установки 10gen, но я не уверен в других, поскольку я их не пробовал.

Ответ №2:

Я думаю, что в вашем выводе журнала это четко указано;

 exception in initAndListen: 10296 dbpath (/data/db) does not exist, terminating
  

Вы можете просто создать этот каталог или, что лучше, определить его как значение конфигурации в вашем файле конфигурации, а затем использовать его как mongod -f C:pathtoyourmongodb.conf .

Комментарии:

1. не беспокойтесь. просто избавьтесь от этой штуки windowz, которая сделает вас более знакомым с разработкой программного обеспечения..

2. По умолчанию MongoDB просматривает: c:datadb папка, поэтому вы также можете просто создать эту структуру каталогов, и процесс базы данных MongoDB не будет кричать на вас.

3. Я разместил data db во многих местах, а также безрезультатно использовал параметр —dbpath. Единственное, что сработало, это создание c:datadb папка, как предложил Мигель Севилья.

Ответ №3:

Укажите путь к базе данных явно таким образом и посмотрите, решит ли это проблему.

 mongod --dbpath data/db
  

Комментарии:

1. Если каталог не существует, он завершится ошибкой в mongo версии 4.2

Ответ №4:

 mongod --dbpath "c://data/db"
  

запустите приведенный выше код, это запустит сервер.

Ответ №5:

Для Windows 7

Вы можете указать альтернативный путь для datadb с параметром dbpath для mongod.exe ,

как в следующем примере:

 c:mongodbbinmongod.exe --dbpath c:mongodbdatadb
  

или

вы можете задать dbpath через файл конфигурации.

Ответ №6:

Проверьте, существует ли путь к файлам данных базы данных 😉 :

Sun Nov 06 18:48:37 [initandlisten] исключение в initAndListen: 10296 dbpath (/data/db) не существует, завершающий

Ответ №7:

Это сработало для меня (если применимо, вы также видите файл блокировки):

 first>youridhere@ubuntu:/var/lib/mongodb$ sudo service mongodb start 
then >youridhere@ubuntu:/var/lib/mongodb$ sudo rm mongod.lock*
  

Ответ №8:

После нескольких попыток это работает для меня в Windows 7 env.:

Изначально каталог, в который вы скопировали все источники MongDB, имеет такой вид:

 bsondump.exe
mongo.exe
mongod.exe
mongod.pdb
mongodump.exe
mongoexport.exe
mongofiles.exe
mongoimport.exe
mongooplog.exe
mongoperf.exe
mongorestore.exe
mongos.exe
mongos.pdb
mongostat.exe
mongotop.exe
  

Все, что вам нужно, это добавить каталог данных и вложенный каталог db (data / db)
Окончательный вид должен выглядеть следующим образом:

 data
bsondump.exe
mongo.exe
mongod.exe
mongod.pdb
mongodump.exe
mongoexport.exe
mongofiles.exe
mongoimport.exe
mongooplog.exe
mongoperf.exe
mongorestore.exe
mongos.exe
mongos.pdb
mongostat.exe
mongotop.exe
  

Затем просто введите в каталоге, где существуют источники MongoDB и каталоги данных / db, эту команду:

 C:my_mongo_dirbin>mongod --dbpath .datadb
  

Ответ №9:

Также проверьте, установлен ли Mongo в качестве службы Windows и работает ли он. Это также важно. Из-за этого может возникнуть конфликт портов.

Ответ №10:

Создайте каталог data / db в вашем основном разделе (Windows):

 C:> mkdir data
C:> mkdir datadb
  

а затем перейдите в свой mongo_directory / bin и запустите mongod.exe:

 C:> cd my_mongo_dirbin

C:my_mongo_dirbin> mongod
  

Не ЗАКРЫВАЙТЕ ЭТО ОКНО

Теперь в другом окне командной строки запустите Mongo:

 C:> cd my_mongo_dirbin
C:my_mongo_dirbin> mongo
  

(ПОМНИТЕ, ЧТО ВЫ ДОЛЖНЫ ОСТАВИТЬ ЭТО ДРУГОЕ ОКНО ОТКРЫТЫМ)

Это решило проблему для меня.

Комментарии:

1. >> mongod —install —dbpath c:datadb —logpath c:datalog >> net start «Mongo DB» // примечание: для net start может потребоваться разрешение администратора

Ответ №11:

создайте структуру папок data / db в рабочем каталоге, а затем запустите mongodb с помощью «mongod —dbpath data / db» работает просто отлично

Ответ №12:

Вам следует создать startup.bat , если вы используете Windows, гораздо удобнее:

 C:mongodbmongodb-win32-x86_64-eiditonbinmongod.exe --dbpath C:mongodbdata
  

И просто щелкните dbclick startup.bat, и mongodb запустится, используя C:mongodbdata в качестве папки данных.

Ответ №13:

Вам просто нужно создать каталог в C:. as C:datadb

Теперь просто запустите MongoDB:

 C:Usersgi.gupta>"c:Program FilesMongoDBServer3.2binmongod.exe"
2016-05-03T10:49:30.412 0530 I CONTROL  [main] Hotfix KB2731284 or later update is not installed, will zero-out data files
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] MongoDB starting : pid=7904 port=27017 dbpath=C:datadb 64-bit host=GLTPM-W036
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] db version v3.2.6
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] git version: 05552b562c7a0b3143a729aaa0838e558dc49b25
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.1p-fips 9 Jul 2015
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] allocator: tcmalloc
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] modules: none
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] build environment:
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten]     distmod: 2008plus-ssl
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten]     distarch: x86_64
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten]     target_arch: x86_64
2016-05-03T10:49:30.414 0530 I CONTROL  [initandlisten] options: {}
2016-05-03T10:49:30.427 0530 I -        [initandlisten] Detected data files in C:datadb created by the 'wiredTiger' storage engine, so setting the active storage engine to
2016-05-03T10:49:30.429 0530 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=1G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(f
chive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2016-05-03T10:49:30.998 0530 I NETWORK  [HostnameCanonicalizationWorker] Starting hostname canonicalization worker
2016-05-03T10:49:30.998 0530 I FTDC     [initandlisten] Initializing full-time diagnostic data capture with directory 'C:/data/db/diagnostic.data'
2016-05-03T10:49:31.000 0530 I NETWORK  [initandlisten] waiting for connections on port 27017
2016-05-03T10:49:40.766 0530 I NETWORK  [initandlisten] connection accepted from 127.0.0.1:57504 #1 (1 connection now open)
  

Затем он будет работать как служба в фоновом режиме.

Ответ №14:

Если вы используете Windows 7/7 .

Вот что вы можете попробовать.

Проверьте правильность установки в панели УПРАВЛЕНИЯ вашего компьютера.

Теперь перейдите в каталог, в котором вы установили MongoDB. В идеале это было бы в

C:Program FilesMongoDBServer3.6bin

Затем либо в командной строке, либо в терминале IDE. Перейдите по указанному выше пути (в идеале к файлу сохранения) и введите

mongod —dbpath

Все должно работать нормально!

Ответ №15:

Самый простой подход, предоставленный файлом справки mongo README

Выполняется

Для параметров командной строки вызовите:

 $ ./mongod --help
  

Для запуска базы данных с одним сервером:

 $ sudo mkdir -p /data/db
$ ./mongod
$
$ # The mongo javascript shell connects to localhost and test database by default:
$ ./mongo
> help
  

Если вы работаете с Windows, перейдите в свой каталог, где у вас есть mongo.exe

используйте следующие команды (я делюсь своими)

 C:Program FilesMongoDBServer3.6bin>mkdir data

C:Program FilesMongoDBServer3.6bin>mkdir datadb

C:Program FilesMongoDBServer3.6bin>mongod ## this will start your mongoDB server
  

Теперь вам нужно запустить другое приглашение CMD и перейти в каталог, где у вас есть mongo, и просто запустить его

 C:Program FilesMongoDBServer3.6bin>mongo ## this will start your mongoDB client
  

Надеюсь, это помогло 🙂

Если это не сработает, запустите CMD от имени администратора