macOS BigSur 또는 Catalina에서는 몽고DB를 설치할 때 추가적업이 필요합니다.
1-1) xcode가 설치된 경우, 패스
$xcode-select --install
1-2) Homebrew가 설치된 경우
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
1-3) HomeBrew 업데이트(2번 과정으로 새로 철치했다면 패스)
$brew update
2) 설치 가능한 몽고DB 목록을 검색한다.
$brew search mongodb
3) 이후 mongodb-community@4.2 버전으로 설치
$brew tap mongodb/brew
$brew install mongodb-community@4.2
4) dbpath설정
일반적으로 /data/db 경로이지만, /data/db 경로는 mac os Catalina부터 현재 Big Sur 버전에서 적용되지 않으므로, 다른 경로를 설정해야 한다.
$mongodb --dbpath/usr/local/var/mongodb/
...
child process stated successfully, paret exiting
5) alias 설정
$alias mongod="mongod --config /usr/local/etc/mongod.conf --fork"
6) 서비스 시작
$brew services start mongodb-community@4.2
==> Successfully started `mongodb-community@4.2` (label: homebrew.mxcl.mongodb-community@4.2)
7) 서비스 종료
$brew services stop mongodb-community@4.2
오류 원인: 데이터를 저장하는 폴더를 다음과 같이 만들 경우, 현재 macOS Bug Sur에서 mongo를 입력할 경우 제대로 작동하지 않는다.
해당 운영체제 버전(10.15)에서부터는 root 폴터에 Writing이 불가능해졌기 때문이다.
$sudo mkdir -p/data/db
mkdir: /data/db: Read-only file system
오류 메시지
[initandlisten] exception in initAndListen: NonExistentPath: Data directory /data/db not found. Create the missing directory or specify another path using (1) the --dbpath command line option, or (2) by adding the 'storage.dbPath' option in the configuration file., terminating
일반적으로 /data/db 경로이지만, /data/db 경로는 macOs Catalina부터 현재 Big Sur 버전에서 적용되지 않으므로, 다음과 같은 다른 경로를 설정한다.
mongod --dbpath /usr/local/var/mongodb/
Error: couldn’t connect to server 127.0.0.1:27017
[MongoDB] couldn't connect to server 127.0.0.1:27017, connection attempt failed