MongoDB에서 데이터베이스를 생성하는 과정도 매우 간단합니다. MongoDB에서는 데이터베이스를 명시적으로 생성할 필요가 없습니다. 즉, 데이터베이스에 데이터를 삽입하려고 할 때 해당 데이터베이스가 존재하지 않으면 MongoDB가 자동으로 데이터베이스를 생성합니다. 그러나, 데이터를 저장하거나 조회하기 전까지는 데이터베이스가 실제로 생성되지 않는다는 점에 유의해야 합니다.
데이터베이스 생성 예시
-
MongoDB Shell (mongosh
)에 접속: 먼저 mongosh
를 사용하여 MongoDB에 접속합니다.
-
데이터베이스 선택: 사용하고자 하는 데이터베이스 이름으로 use
명령을 실행합니다. 이때 해당 데이터베이스가 존재하지 않으면, MongoDB는 자동으로 데이터베이스를 생성합니다(단, 실제로 데이터를 삽입하는 순간에 생성됩니다). 예를 들어, testDB
라는 이름의 데이터베이스를 사용하고자 한다면, 다음과 같이 입력합니다:
use testDB
이 명령은 testDB
데이터베이스를 사용하겠다는 것을 명시하지만, 데이터베이스에 어떤 데이터도 삽입되지 않았다면 실제로는 아직 생성되지 않았습니다.
-
데이터 삽입을 통한 데이터베이스 생성: 데이터베이스에 첫 번째 컬렉션에 데이터를 삽입함으로써 데이터베이스를 실제로 생성합니다. 예를 들어, testCollection
이라는 컬렉션에 문서를 삽입한다고 가정해 보겠습니다:
db.testCollection.insertOne({name: "John Doe", age: 30})
이 명령을 실행하면, testDB
데이터베이스 내에 testCollection
컬렉션이 생성되고, 주어진 문서가 삽입됩니다. 이 과정에서 testDB
데이터베이스가 아직 존재하지 않는 경우, MongoDB는 자동으로 testDB
데이터베이스를 생성합니다.
데이터베이스 리스트 확인
생성된 데이터베이스를 확인하고 싶다면, mongosh
에서 다음 명령어를 사용하여 현재 서버에 있는 모든 데이터베이스의 리스트를 볼 수 있습니다:
show dbs
이 명령은 현재 MongoDB 서버 인스턴스에서 사용 가능한 모든 데이터베이스의 목록을 표시합니다. 데이터를 아직 삽입하지 않은 데이터베이스는 이 목록에 표시되지 않습니다.
MongoDB에서 데이터베이스와 컬렉션의 생성은 이처럼 데이터 삽입과 밀접하게 연관되어 있으며, 개발자가 필요에 따라 유연하게 데이터 구조를 조정할 수 있는 설계를 제공합니다.