우분투 18.04 몽고db 설치 - ubuntu 18.04 mong-godb seolchi


MongoDB 는 오픈 소스, 현대 문서 데이터베이스 관리 시스템으로, 최신 데이터 기술을 기반으로 고성능 데이터 지속성, 고 가용성 및 자동 확장을 위해 설계되었습니다. NoSQL 을 선택하십시오. MongoDB 에서 레코드는 문서이며 필드 및 값 쌍으로 구성된 데이터 구조입니다 (MongoDB 문서는 JSON 개체와 유사합니다).

고성능 및 뛰어난 확장 성 기능을 제공하므로 강력한 미션 크리티컬 및 고 가용성 데이터베이스가 필요한 최신 응용 프로그램을 구축하는 데 사용됩니다.

이 기사에서는 우분투 18.04 에서 MongoDB 를 설치하고 서비스를 관리하며 기본 인증을 설정하는 방법을 설명합니다.

중요 : MongoDB 개발자는 64 비트 LTS (장기 지원) strong> 14.04 LTS (믿을 만함), 16.04 LTS (xenial) 등이 있습니다.

1 단계 : 우분투 18.04에 MongoDB 설치하기

1. 우분투의 공식 소프트웨어 패키지 저장소는 최신 버전의 MongoDB 와 함께 제공되며 APT 패키지 관리자를 사용하여 쉽게 설치할 수 있습니다.

먼저 리포지토리 목록의 최신 버전을 갖도록 시스템 소프트웨어 패키지 캐시를 업데이트합니다.

$ sudo apt update

몽고 도구 , mongodb-client , mongodb-server 와 같은 여러 패키지가 포함 된 MongoDB 패키지를 설치하십시오./strong> 및 mongodb-server-core 를 선택합니다.

$ sudo apt install mongodb

3. 성공적으로 설치하면 systemd를 통해 MongoDB 서비스가 자동으로 시작되며 프로세스는 27017 포트에서 수신 대기합니다. 그림과 같이 systemctl 명령을 사용하여 상태를 확인할 수 있습니다.

$ sudo systemctl status mongodb

우분투 18.04 몽고db 설치 - ubuntu 18.04 mong-godb seolchi

2 단계 : MongoDB 서비스 관리

4. MongoDB 설치는 systemd 서비스로 제공되며 다음과 같이 표준 systemd 명령을 통해 쉽게 관리 할 수있습니다.

MongoDB 서비스 실행을 중지하려면 다음 명령을 실행하십시오.

$ sudo systemctl stop mongodb	

MongoDB 서비스를 시작하려면 다음 명령을 입력하십시오.

$ sudo systemctl start mongodb

MongoDB 서비스를 다시 시작하려면 다음 명령을 입력하십시오.

$ sudo systemctl restart mongodb	

자동으로 시작된 MongoDB 서비스를 사용 불가능하게하려면 다음 명령을 입력하십시오.

$ sudo systemctl disable mongodb	

MongoDB 서비스를 다시 활성화하려면 다음 명령을 입력하십시오.

$ sudo systemctl enable mongodb	

3 단계 : 방화벽에서 원격 MongoDB 액세스 사용

5. 기본적으로 MongoDB 27017 포트에서 실행되므로 어디에서나 액세스 할 수 있습니다.

$ sudo ufw allow 27017

그러나 어디서나 MongoDB 에 액세스 할 수있게 설정하면 데이터베이스 데이터에 제한없이 액세스 할 수 있습니다. 따라서 다음 명령을 사용하여 특정 IP 주소 위치에 대한 액세스를 기본 MongoDB의 포트에 제공하는 것이 좋습니다.

$ sudo ufw allow from your_server_IP/32 to any port 27017 
$ sudo ufw status

6 기본적으로 포트 27017 은 로컬 주소 127.0.0.1 에서만 수신 대기합니다. 원격 MongoDB 연결을 허용하려면 그림과 같이 서버 IP 주소를 /etc/mongodb.conf 구성 파일에 추가해야합니다.

bind_ip = 127.0.0.1,your_server_ip
#port = 27017

파일을 저장하고 편집기를 종료 한 다음 MongoDB를 다시 시작하십시오.

$ sudo systemctl restart mongodb

4 단계 : MongoDB 데이터베이스 루트 사용자 및 암호 만들기

7. 기본적으로 MongoDB 는 사용자 인증이 비활성화되어 제공되므로 액세스 제어없이 시작됩니다. mongo shell 을 시작하려면 다음 명령을 실행하십시오.

$ mongo 

8. 몽고 셸 에 연결하면 다음 명령을 사용하여 사용 가능한 모든 데이터베이스를 나열 할 수 있습니다.

> show dbs

9. MongoDB 배치에 대한 액세스 제어를 활성화하여 인증을 시행하려면 다음을 수행하십시오. 사용자가 데이터베이스 서버에 연결할 때마다 자신을 식별하도록 요구합니다.

MongoDB는 기본적으로 Salted Challenge Response 인증 메커니즘 ( SCRAM ) 인증 메커니즘을 사용합니다. SCRAM 을 사용하여 MongoDB는 제공된 사용자 자격 증명을 사용자 이름, 암호 및 인증 데이터베이스 (사용자가 생성 된 데이터베이스 및 사용자 이름과 함께 사용자를 식별하는 역할)와 대조하여 검증합니다.

관리 데이터베이스에서 사용자 관리자 ( MySQL/MariaDB 아래의 루트 사용자와 유사)를 만들어야합니다. 이 사용자는 사용자 작성, 사용자 작성 또는 권한 부여 취소, 사용자 정의 역할 작성 또는 수정과 같은 사용자 및 역할을 관리 할 수있습니다.

먼저 관리자 데이터베이스로 전환 한 후 다음 명령을 사용하여 루트 사용자 를 만드십시오.

> use admin 
> db.createUser({user:"root", pwd:"[email protected]!#@%$admin1", roles:[{role:"root", db:"admin"}]})

우분투 18.04 몽고db 설치 - ubuntu 18.04 mong-godb seolchi

이제 mongo 쉘을 종료하여 다음에 설명 된대로 인증을 사용 가능하게하십시오.

10. mongodb 인스턴스는 - auth 명령 줄 옵션없이 시작되었습니다. /lib/systemd/system/mongod.service 파일을 편집하여 사용자의 인증을 활성화해야합니다. 먼저 편집을 위해 파일을 엽니 다.

$ sudo vim /lib/systemd/system/mongodb.service 

[Service] 설정 섹션에서 ExecStart 매개 변수를 찾습니다.

ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

다음과 같이 변경하십시오.

ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

우분투 18.04 몽고db 설치 - ubuntu 18.04 mong-godb seolchi

파일을 저장하고 종료하십시오.

11. 8. 구성 파일을 변경 한 후 ' systemctl daemon-reload '를 실행하여 장치를 다시로드하고 MongoDB 서비스를 다시 시작한 후 다음과 같이 상태를 확인하십시오.

$ systemctl daemon-reload
$ sudo systemctl restart mongodb	
$ sudo systemctl status mongodb	

우분투 18.04 몽고db 설치 - ubuntu 18.04 mong-godb seolchi

12. 이제 몽고 에 연결하려고하면 자신을 MongoDB 사용자로 인증해야합니다. 예 :

$ mongo -u "root" -p --authenticationDatabase "admin"

우분투 18.04 몽고db 설치 - ubuntu 18.04 mong-godb seolchi

참고 : 암호는 셸 기록 파일에 저장되며 나중에 공격자가 볼 수 있으므로 명령 줄에 암호를 입력하지 않는 것이 좋습니다.

그게 다야! MongoDB 는 고성능, 고 가용성 및 자동 확장을 제공하는 오픈 소스의 최신 No-SQL 데이터베이스 관리 시스템입니다.

이 기사에서는 Ubuntu 18.04 MongoDB 를 설치하고 시작하는 방법을 설명했습니다. 검색어가 있으면 아래의 의견 양식을 사용하여 Google에 문의하십시오.