Mac에서 mongodb 데이터베이스의 위치


91

나는 mongodb뿐만 아니라 Mac에 익숙하지 않습니다.

Mac에서 mongodb를 사용하여 만든 데이터베이스에 액세스하는 데 이상한 의심이 있습니까?

Windows에는 데이터베이스 파일이 저장된 c : \ data \ db라는 폴더가 있습니다.

Mac에서 데이터베이스가 저장되는 방법과 위치.

나는 다음과 같은 것을 기억한다.

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

Mac에서 이러한 폴더를 만들었지 만 데이터베이스를 만들었지 만이 폴더에서 데이터베이스 파일을 찾지 못했습니다.

Mac에서 데이터베이스 파일은 어디에 저장됩니까?

어떤 도움이라도 정말 감사하겠습니다.

답변:


93

MongoDB의 기본 데이터 디렉토리는 /data/db.

이는 명령 줄 또는 구성 파일에 지정된 dbpath옵션 으로 재정의 할 수 있습니다 .

Homebrew 또는 MacPorts와 같은 패키지 관리자 를 통해 MongoDB를 설치하는 경우 이러한 설치는 일반적으로 / data / db가 아닌 기본 데이터 디렉터리를 만들고 구성 파일에 dbpath를 설정합니다.

mongod시작시 dbpath가 제공된 경우 mongo셸 에서 값을 확인할 수 있습니다 .

db.serverCmdLineOpts()

다음과 같은 값이 표시됩니다.

"parsed" : {
    "dbpath" : "/usr/local/data"
},

1
mongod서버가 root사용자 로 실행될 필요가 없다는 점도 주목할 가치가 있습니다 . 데이터 디렉토리 권한에 mongod서버가 사용 중인 사용자 계정에 대한 읽기 / 쓰기 액세스가 포함되어 있는지 확인해야합니다 .
Stennie 2012-12-11

1
getCommandLineOpts ()를 입력하면`ReferenceError : getCommandLineOpts is not defined (shell) : 1 '과 같은 메시지가 표시됩니다. 어떤 도움 ??
Spaniard89

4
어떤 버전의 MongoDB를 사용하고 있습니까? 으로 확인할 수 있어야합니다 db.serverStatus().version. 셸 도우미 getCommandLineOpts()가 MongoDB 2.0에 추가 되었다고 생각합니다 . 시도해 볼 수도 있습니다 db.getSiblingDB("admin").runCommand({getCmdLineOpts:1})..
Stennie

내가 사용 버전 2.2.2, 내가 시도 할 때 db.getSiblingDB("admin").runCommand({getCmdLineOpts:1})나는 같은 것을 가지고 { "argv" : [ "./bin/mongod" ], "parsed" : { }, "ok" : 1 }합니까를 평균 내 데이터베이스 디렉토리가 설정되어 있지 않은지?
Spaniard89

메이트를 얻었고 루트와 하위 폴더 db에 data라는 폴더를 만들었습니다. 이제 경로를 보여주고 있습니다. 도움을 주셔서 감사합니다.
Spaniard89


135

감사합니다 @Mark, 나는 이것을 계속해서 잊어 버립니다. Homebrew로 MongoDB를 설치 한 후 :

  • 데이터베이스는 / usr / local / var / mongodb / 디렉토리에 저장됩니다.
  • mongod.conf 파일은 다음과 같습니다. /usr/local/etc/mongod.conf
  • mongo 로그는 / usr / local / var / log / mongodb / 에서 찾을 수 있습니다.
  • mongo 바이너리는 다음과 같습니다. / usr / local / Cellar / mongodb / [버전] / bin

이것은 머리에 못을 박았습니다. 감사합니다
Mark Pieszak-Trilon.io

2
내가 검사 할 때 / usr / 지방은 / var / MongoDB를 / 디렉토리가 비어 있습니다. 그리고 아니요, mongoldb의 기본 dbpath를 변경하지 않았습니다. 데이터베이스 파일을 찾는 데 도움을 줄 수 있습니까?
니시 Bangar

그것을 위해 심볼릭 링크를 추가 sudo를 에선 -s / usr / 지방은 / var / MongoDB를 / 데이터 / DB
TheJeff

나는 폴더가 보이지 않는다 etc의를 /usr/local/. 구성 파일은 어디에 있습니까? 또는 롤을 어떻게 찾을 수 있습니까?
Reinier68

25

버전 3.4.2에서 동일한 문제가 발생했습니다.

실행하려면 (homebrew로 설치 한 경우) 다음과 같은 프로세스를 실행하십시오.

$ mongod --dbpath /usr/local/var/mongodb

이 솔루션은 Homebrew를 통해 v4.2.5로 업그레이드 한 후 내 문제를 해결했습니다.
Matthias Hagemann

10

난 그냥 설치 MongoDB를 3.4사제를 . (MongoDB를 설치 BREW) 그것은을 찾습니다 / 데이터 / DB 기본적으로.

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/

다음은 mongod 실행의 출력입니다.


9
이것은 mongod터미널에서 직접 시작하는 경우 입니다. 당신이 사용하는 경우 brew services start mongodb, 프로세스의 구성 파일을 사용합니다 /usr/local/etc/mongod.conf차례로하는 지정 dbPath/usr/local/var/mongodb
Molomby

기여해 주신 @Molomby에게 감사드립니다. 나는 그런 식으로 시작하지 않았고 그런 식으로도 몰랐습니다. :)
csonuryilmaz

1

환경 : macOS Mojave 10.14.4

설치 : homebrew

위치 :/usr/local/Cellar/mongodb/4.0.3_1

참고 :으로 버전을 업데이트 brew upgrade mongo하면 폴더 4.0.4_1가 제거되고 새 버전 폴더로 교체됩니다.

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