MongoDB를 처음 사용하는 경우 mongo 명령을 실행할 수 없습니다.


93

MongoDB를 실행하려고했습니다.

   E:\mongo\bin>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:\mongo\bin>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을 사용하고 있습니다)?


로그를 읽는 것은 새로운 사람에게도 너무 많이 요청할 수 없기 때문에 반대 투표를 받았습니다. 셧다운이 시작되기 직전의 줄은 무슨 일이 일어나고 있는지 명확하게 나타냅니다.
— Markus W Mahlberg 2014

답변:


76

나는 당신의 로그 출력이 그것을 명확하게 설명한다고 생각합니다.

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

이 디렉토리를 간단히 만들거나 구성 파일 내에서 구성 값으로 정의한 다음 mongod -f C:\path\to\your\mongodb.conf.


6
걱정 마. 소프트웨어 개발에 더 익숙해 지도록 windowz를 제거하십시오.
— kirpit 2011

14
기본적으로 MongoDB는 c : \ data \ db 폴더를 찾습니다. 따라서 해당 디렉터리 구조를 만들 수도 있으며 MongoDB 데이터베이스 프로세스는 소리를 지르지 않습니다.
— Miguel Sevilla

1
나는 data \ db를 여러 곳에 배치하고 --dbpath 옵션을 사용하여 아무 소용이 없습니다. 제대로 된 것은 Miguel Sevilla가 제안한대로 c : \ data \ db 폴더를 만드는 것뿐이었습니다.
— brybott 2014 년

165

MongoDB를 설치 한 후 데이터 폴더를 수동으로 생성해야합니다.

기본적으로 MongoDB는 / data / db에 데이터를 저장합니다. 
하지만 자동으로 해당 디렉토리를 생성하지는 않습니다. 그것을 만들려면 다음을 수행하십시오.

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

MongoDB에 다른 데이터 디렉토리를 사용하도록 지시 할 수도 있습니다.
--dbpath 옵션을 사용합니다.

자세한 정보는 MongoDB 위키 페이지로 이동하십시오.


3
이것이 답이 될 것입니다. "문서 읽기"보다 더 도움이되었습니다.
— Dan

또한 mongo를 시작 service mongodb start하면 자동으로 /etc/mongod.conf파일을 읽고 시작할 때마다 --dbpath 또는 --config 변수를 지정할 필요가 없습니다. 이것은 10gen 설치에서 확실히 작동하지만 시도하지 않았기 때문에 다른 사람들에 대해서는 확실하지 않습니다.
— boundless08

27

이와 같이 명시 적으로 데이터베이스 경로를 지정하고 문제가 해결되는지 확인하십시오.

mongod --dbpath data/db

디렉토리가 존재하지 않으면 mongo 버전 4.2에서 실패합니다
— Tono Nam


5

들어 윈도우 7

mongod.exe\data\db 에 대한 dbpath 설정을 사용하여 대체 경로를 지정할 수 있습니다 .

다음 예에서와 같이 :

c:\mongodb\bin\mongod.exe --dbpath c:\mongodb\data\db

또는

구성 파일을 통해 dbpath를 설정할 수 있습니다 .


4

데이터베이스 데이터 파일에 대한 경로가 있는지 확인하십시오.;) :

Sun Nov 06 18:48:37 [initandlisten] initAndListen 예외 : 10296 dbpath (/ data / db) does not exist , terminating


2

이것은 나를 위해 일했습니다 (적용되는 경우 잠금 파일도 표시됨).

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

2

몇 번의 시도 후에 이것은 Windows 7 환경 에서 나를 위해 작동합니다 . :

처음에 모든 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_dir\bin>mongod --dbpath .\data\db

1

또한 Mongo를 Windows 서비스로 설치했는지, 실행 중인지 확인하십시오. 그것도 중요합니다. 그 때문에 포트 충돌이있을 수 있습니다.


1

기본 (Windows) 파티션에 data / db 디렉토리를 만듭니다.

C:\> mkdir \data
C:\> mkdir \data\db

그런 다음 mongo_directory / bin으로 이동하여 mongod.exe를 실행하십시오.

C:\> cd \my_mongo_dir\bin

C:\my_mongo_dir\bin> mongod

이 창을 닫지 마십시오

이제 다른 명령 프롬프트 창에서 Mongo를 실행하십시오.

C:\> cd \my_mongo_dir\bin
C:\my_mongo_dir\bin> mongo

(다른 창은 열어 두어야합니다.)

이것은 나를 위해 문제를 해결했습니다.


>> mongod --install --dbpath C : \ 데이터 \ DB --logpath C : \ 데이터 \ 로그 >> net 시작 "몽고 DB"// 참고 : net 시작은 관리자 권한을해야 할 수도 있습니다
— damphat

1

작업 디렉토리에 data / db 폴더 구조를 만든 다음 "mongod --dbpath data / db"를 사용하여 mongodb를 시작하면 잘 작동합니다.


1

startup.batWindows를 사용 하는 경우 훨씬 더 편리하게 만들어야 합니다.

C:\mongodb\mongodb-win32-x86_64-eiditon\bin\mongod.exe --dbpath C:\mongodb\data

그리고 dbclick startup.bat 및 mongodb는 C:\mongodb\data데이터 폴더로 사용하여 실행됩니다 .


0

C :에 디렉토리를 생성하기 만하면됩니다. C : \ data \ db \로

이제 mongoDB를 시작하십시오.

C:\Users\gi.gupta>"c:\Program Files\MongoDB\Server\3.2\bin\mongod.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:\data\db\ 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:\data\db\ 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)

그런 다음 백그라운드에서 서비스로 실행됩니다.


0

Windows 7/7 이상을 사용하는 경우.

시도해 볼 수있는 것이 있습니다.

컴퓨터의 제어판에서 설치가 올바른지 확인하십시오.

이제 MongoDB를 설치 한 디렉토리로 이동합니다. 이상적으로는

C : \ Program Files \ MongoDB \ 서버 \ 3.6 \ bin

그런 다음 명령 프롬프트 또는 IDE의 터미널에서. 위의 경로 (이상적으로는 저장 파일)로 이동하여 입력하십시오.

mongod --dbpath

잘 작동합니다!


0

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 Files\MongoDB\Server\3.6\bin>mkdir \data

C:\Program Files\MongoDB\Server\3.6\bin>mkdir \data\db

C:\Program Files\MongoDB\Server\3.6\bin>mongod ## this will start your mongoDB server

이제 다른 CMD 프롬프트를 실행하고 mongo가있는 디렉토리로 이동하여 실행해야합니다.

C:\Program Files\MongoDB\Server\3.6\bin>mongo ## this will start your mongoDB client

도움이 되었기를 바랍니다 :)

작동하지 않으면 CMD를 관리자로 실행하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.