Pymongo 데이터베이스 선택 및 생성

Pymongo 데이터베이스 선택 및 생성

Database
Pymongo
Pymongo 데이터베이스 선택 및 생성
Author

gabriel yang

Published

September 22, 2024


MongoDB는 NoSQL 데이터베이스로, 유연한 데이터 모델링과 확장성이 뛰어난 특성을 지니고 있습니다. Python에서 MongoDB와 상호작용하기 위해 PyMongo 라이브러리를 사용할 수 있습니다. 이번 글에서는 PyMongo를 이용하여 MongoDB 서버에 연결하는 방법을 설명하겠습니다.

1. PyMongo 설치하기

먼저, PyMongo 라이브러리를 설치해야 합니다. 터미널에서 다음 명령어를 입력하여 설치합니다:

pip install pymongo

mongoDB가 실행되면 기본적으로 localhost:27017에서 MongoDB에 연결할 수 있습니다.

3. PyMongo로 MongoDB에 연결하기

이제 PyMongo를 사용하여 MongoDB 서버에 연결해보겠습니다. 다음은 기본적인 연결 코드입니다:

from pymongo import MongoClient

# MongoDB 서버에 연결
client = MongoClient('mongodb://root:examplepassword@localhost:27017/')

# 데이터베이스 선택
db = client['my_database']

# 연결 확인
print("Connected to database:", db.name)
Connected to database: my_database

코드 설명:

  • MongoClient
    • ‘mongodb://root:examplepassword@localhost:27017/’)서버에 연결하는 클라이언트를 생성합니다. 연결 문자열은 다음과 같은 구성 요소를 포함합니다
    • root: 데이터베이스 사용자 이름. MongoDB의 인증 사용자입니다.
    • examplepassword: 해당 사용자의 비밀번호.
    • localhost: MongoDB 서버가 실행되고 있는 호스트. 일반적으로 로컬 머신에서 실행되는 경우 localhost를 사용합니다.
    • 27017: MongoDB의 기본 포트 번호입니다.
  • client['my_database']
    • 연결된 데이터베이스를 선택합니다. 해당 데이터베이스가 존재하지 않으면 MongoDB는 자동으로 생성합니다.
  • db.name
    • 선택한 데이터베이스의 이름을 출력합니다.

4. 데이터베이스와 컬렉션 사용하기

MongoDB에 연결한 후, 데이터를 삽입하거나 쿼리할 수 있습니다. 다음은 데이터를 삽입하고 조회하는 간단한 예시입니다:

데이터 삽입

# 컬렉션 선택
collection = db['users']

# 데이터 삽입
user_data = {"name": "Alice", "age": 30}
result = collection.insert_one(user_data)

print("Inserted user with ID:", result.inserted_id)
Inserted user with ID: 66ef89e2f727d521a524e0ff

데이터 조회

# 데이터 조회
for user in collection.find():
    print(user)
{'_id': ObjectId('66ef8ab71855e9ebe58b8250'), 'name': 'Alice', 'age': 30}

코드 설명:

  • db['users']: users라는 컬렉션을 선택합니다.
  • insert_one(): 한 개의 문서를 삽입합니다.
  • find(): 컬렉션의 모든 문서를 조회합니다.

5. 연결 종료

작업이 끝난 후 MongoDB 서버와의 연결을 종료할 수 있습니다. 일반적으로 MongoClient 객체는 사용이 끝난 후 자동으로 연결을 종료하지만, 명시적으로 종료할 수 있습니다.

client.close()