itsource

MongoDB가 작동하지 않는다."오류: dbpath(/data/db)가 존재하지 않습니다."

mycopycode 2023. 4. 2. 10:26
반응형

MongoDB가 작동하지 않는다."오류: dbpath(/data/db)가 존재하지 않습니다."

터미널에서 "mongod"를 실행하려고 하면 다음 오류가 발생합니다.머신의 언인스톨, 재인스톨, 재기동을 시도했습니다.어떻게 작동시킬지 어떤 제안이라도 해주면 좋을 것 같습니다.

에러:

dbpath (/data/db) does not exist.
 Create this directory or give existing directory in --dbpath.
 See http://dochub.mongodb.org/core/startingandstoppingmongo

사이드 노트:또, 이 에러가 발생했을 때에, 노드도 머신의 동작을 정지했습니다.

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: failed to connect to [localhost:27017]

어떤 도움이라도 주시면 감사하겠습니다!

이것은, Mongo 가 디렉토리를 찾을 수 있도록, 디렉토리가 올바른 장소에 설정되어 있는 것을 확인합니다.

sudo mkdir -p /data/db/

sudo chown `id -u` /data/db

다음 명령을 사용하여 root /data/db에 디렉토리를 만들거나 다른 경로를 설정해야 합니다.

mongod --dbpath /srv/mongodb/

링크의 예를 참조해 주세요.

이 문제를 해결했습니다.

sudo mongod --dbpath=/var/lib/mongodbmongo를 사용하여 mongodb 쉘에 액세스합니다.

새 데이터 디렉토리의 사용자를 변경합니다.

chown mongodb [rute_directory]

그리고 다음에 mongo 서비스를 시작해보십시오.

서비스 mongod 시작

나는 이것으로 같은 문제를 해결한다.

데몬(통상은 d로 끝남)은 보통 서비스로 시작됩니다.서비스(daemon)를 기동하면 mongodb가 설계대로 동작할 수 있습니다(destro와 잘 통합되는 경우 허가 변경 없이 변경).mongod를 직접 시작하지 않고 mongodb라는 이름의 서비스를 사용하여 시작합니다.시작 시 systemd가 활성화되어 있는 distro에서는 다음과 같이 실행됩니다.

sudo systemctl enable mongodb    
sudo systemctl start mongodb

또는 upstart(/etc/init가 있는 경우) 또는 init(/etc/init.d가 있는 경우)(https://www.tecmint.com/systemd-replaces-init-in-linux/ )를 사용하여 다음 작업을 수행합니다.

sudo service mongodb enable
sudo service mongodb start

Gentoo(/etc/init.d에 포함)와 같이 rc('run 명령어')를 가진 distro가 있는 경우(https://forums.gentoo.org/viewtopic-t-854138-start-0.html)를 실행합니다.

rc-update add mongodb default 
/etc/init.d/mongodb start 

FreeB의 디스트로/버전아직 rc가 있는 SD(사용하시는 버전이 systemd로 전환되었는지 여부를 확인하세요.그 이외의 경우는, 이하를 참조해 주세요).

  • /etc/rc.conf에 다음 행을 추가합니다.

    mongod_enable="네.

  • 그 후, 다음과 같이 합니다.

    sudo service mongod start

서비스를 시작한 후, 권한이 없는 사용자는 mongo를 사용할 수 있으며, 각 사용자는 별도의 데이터를 갖게 됩니다.

mkdir -p /data/db 명령어(sudo 명령어 포함 및 제외 모두 사용)를 사용하여 파일을 저장하려고 하면 "The file /data/db db dis not exist"라는 오류가 나타납니다.그러나 나중에 한 사이트에서 Emil이라는 사람이 "/data/db" 경로가 Mac에서 더 이상 작동하지 않으므로 "~/data/db"를 사용하십시오. 즉, 이전 명령 대신 mkdir -p ~/data/db 명령을 사용하십시오.또한 mongod --dbpath ~/data/db를 사용하여 mongod를 실행합니다.저에게는 효과가 있었습니다.같은 문제에 직면한 다른 사람에게도 효과가 있기를 바랍니다.

언급URL : https://stackoverflow.com/questions/24599119/mongodb-not-working-error-dbpath-data-db-does-not-exist

반응형