Docs Menu
Docs Home
/

MongoDB의 데이터베이스 및 컬렉션

MongoDB는 데이터 기록을 문서(특히 BSON 문서)로 저장하며, 이 문서들은 컬렉션에 함께 모여 있습니다. 데이터베이스는 하나 이상의 문서 컬렉션을 저장합니다.

Atlas UI, 또는 MongoDB Compass 에서mongosh Atlas cluster 의 데이터베이스 및 컬렉션 을 관리 수 있습니다. 이 페이지에서는 Atlas UI 에서 Atlas cluster 의 데이터베이스 및 컬렉션을 관리 하는 방법을 설명합니다. 자체 관리형 배포서버의 경우 mongosh 또는 MongoDB Compass 를 사용하여 데이터베이스 및 컬렉션을 관리 있습니다.

데이터베이스 및 컬렉션을 관리하는 데 사용할 클라이언트를 선택합니다.

MongoDB Atlas 는 선택한 cloud 제공자에서 데이터베이스를 간편하게 배포하고 관리할 수 있는 멀티 클라우드 데이터베이스 서비스입니다.

MongoDB Shell mongosh 은 MongoDB 배포서버와 상호 작용하기 위한 JavaScript 및 Node.js REPL 환경입니다. 학습 내용은 mongosh 를 참조하세요.

MongoDB Compass는 시각적 환경에서 MongoDB 데이터를 쿼리, 애그리게이션 및 분석할 수 있는 강력한 GUI입니다. 자세한 내용은 MongoDB Compass를 참조하세요.

MongoDB에서 데이터베이스는 하나 이상의 문서 컬렉션을 보유합니다.

사용할 데이터베이스 선택하려면 Atlas 에 로그인 하고 프로젝트 의 Data Explorer 페이지로 이동합니다.

1
  1. 아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.

  2. 아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.

2

사이드바에서 Database 제목 아래의 Data Explorer를 클릭합니다.

데이터 탐색기 가 표시됩니다.

사용할 데이터베이스를 선택하려면 mongosh에서 다음 예와 같이 use <db> 문을 실행합니다.

use myDB

사용할 데이터베이스를 선택하려면 다음 단계를 완료하세요.

1

자세한 내용은 MongoDB에 연결을 참조하세요.

2

Databases 탭 이 열리고 MongoDB deployment 서버를 위한 기존 데이터베이스가 나열됩니다.

Atlas 에서 새 데이터베이스 만들려면 다음 단계를 수행하세요.

1
  1. 아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.

  2. 아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.

  3. 사이드바에서 Database 제목 아래의 Data Explorer를 클릭합니다.

    데이터 탐색기 가 표시됩니다.

2

사이드바에서 클러스터 선택하거나 위로 마우스를 Connections 가져간 다음 아이콘을 클릭하여 Create Database 대화 상자를 엽니다.

3

Database NameCollection Name을 입력하여 데이터베이스와 첫 번째 컬렉션을 생성합니다.

컬렉션에서 사용자 지정 데이터 정렬을 사용하려면 Use Custom Collation 확인란을 선택하고 원하는 데이터 정렬 설정을 선택합니다.

중요

데이터베이스 및 컬렉션 이름에 민감한 정보를 포함하지 마세요.

MongoDB database 이름 및 컬렉션 이름에 대한 자세한 내용은 이름 지정 제한을 참조하세요.

4

컬렉션이 time series 컬렉션인지를 선택합니다. Time series 컬렉션을 생성하도록 선택한 경우 시간 필드와 세분성을 지정합니다. 선택적으로 메타 필드와 컬렉션의 이전 데이터가 만료되는 시간을 지정할 수 있습니다.

5

성공적인 생성되면 데이터베이스 와 컬렉션 Connections 사이드바에 나타납니다.

데이터베이스가 존재하지 않는 경우, MongoDB는 해당 데이터베이스에 사용할 데이터를 처음 저장할 때 데이터베이스를 생성합니다. 따라서 존재하지 않는 데이터베이스로 전환하여 mongosh에서 다음 작업을 수행할 수 있습니다.

use myNewDB
db.myNewCollection1.insertOne( { x: 1 } )

insertOne() 작업은 데이터베이스 myNewDB와 컬렉션 myNewCollection1이 아직 존재하지 않는 경우 둘 다 생성합니다. 데이터베이스와 컬렉션 이름이 모두 MongoDB 이름 지정 제한을 준수하는지 확인하세요.

1
2
3
4

MongoDB는 문서를 컬렉션에 저장합니다. 컬렉션은 관계형 데이터베이스의 테이블과 유사합니다.

MongoDB 문서 컬렉션입니다.
클릭하여 확대

만약 컬렉션이 존재하지 않는다면 MongoDB는 해당 컬렉션의 데이터를 처음 저장할 때 컬렉션을 생성합니다.

Atlas 에서 새 컬렉션 만들려면 다음 단계를 수행하세요.

1
  1. 아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 프로젝트가 포함된 조직을 선택합니다.

  2. 아직 표시되지 않은 경우 내비게이션 바의 Projects 메뉴에서 프로젝트를 선택합니다.

  3. 사이드바에서 Database 제목 아래의 Data Explorer를 클릭합니다.

    데이터 탐색기 가 표시됩니다.

2

데이터베이스 선택하거나 데이터베이스 위로 마우스를 가져간 다음 아이콘을 클릭하여 Create Collection 대화 상자를 엽니다.

3

Create Collection 대화 상자에서 생성하려는 컬렉션 의 이름을 입력합니다.

MongoDB Atlas Additional preferences도 제공합니다. 다음 옵션 중에서 선택할 수 있습니다.

중요

컬렉션 이름에 민감한 정보를 포함하지 마세요.

MongoDB 컬렉션 이름에 대한 자세한 내용은 이름 지정 제한을 참조하세요.

4

컬렉션이 time series 컬렉션인지를 선택합니다. Time series 컬렉션을 생성하도록 선택한 경우 시간 필드와 세분성을 지정합니다. 선택적으로 메타 필드와 컬렉션의 이전 데이터가 만료되는 시간을 지정할 수 있습니다.

5

성공적인 생성되면 Connections 사이드바의 데이터베이스 아래에 컬렉션 나타납니다.

db.myNewCollection2.insertOne( { x: 1 } )
db.myNewCollection3.createIndex( { y: 1 } )

insertOne()createIndex() 연산은 모두 컬렉션이 아직 존재하지 않는 경우 해당 컬렉션을 생성합니다. 컬렉션 이름이 MongoDB 이름 지정 제한을 준수하는지 확인하세요.

1
2
3
4

MongoDB는 최대 크기 설정 또는 문서 검증 규칙 설정과 같은 다양한 옵션을 사용하여 컬렉션을 명시적으로 생성할 수 있는 db.createCollection() 메서드를 제공합니다. 이러한 옵션을 지정하지 않은 경우 컬렉션에 데이터를 처음 저장할 때 MongoDB가 새 컬렉션을 생성하므로 컬렉션을 명시적으로 생성할 필요가 없습니다.

이러한 컬렉션 옵션을 수정하려면 collMod를 참조하세요.

1
2
3
4

MongoDB Compass 는 컬렉션 에 대해 구성할 수 있는 다음과 같은 추가 기본 설정을 제공합니다.

기본적으로 컬렉션은 문서가 동일한 스키마를 가질 필요가 없습니다. 즉, 단일 컬렉션의 문서가 동일한 필드 집합을 가질 필요는 없으며 필드의 데이터 유형은 컬렉션 내의 문서마다 다를 수 있습니다.

하지만 업데이트 및 삽입 작업 중에 컬렉션에 스키마 유효성 검사 규칙을 시행할 수 있습니다. 자세한 내용은 스키마 유효성 검사를 참조하세요.

MongoDB Atlas에서 호스팅되는 배포의 경우,Performance Advisor 및 MongoDB Atlas UI는 일반적인 스키마 설계 문제를 감지하고 MongoDB 권장사항을 따르는 수정을 제안합니다. 자세히 알아보려면 스키마 제안을 참조하세요.

컬렉션에서 문서의 구조를 변경(예: 새 필드 추가, 기존 필드 제거, 필드 값을 새 유형으로 변경)하려면 문서를 새 구조로 업데이트하세요.

컬렉션에는 변경 불가능한 UUID 가 할당됩니다. 컬렉션 UUID는 샤딩된 클러스터의 복제본 세트 및 샤드의 모든 멤버에서 동일하게 유지됩니다.

컬렉션의 UUID를 조회하려면 listCollections 명령 또는 db.getCollectionInfos() 메서드를 실행합니다.

돌아가기

문서

이 페이지의 내용