[python] 파이썬(PyMongo)을 사용한 MongoDB 데이터 백업 및 복원
이 블로그 포스트에서는 파이썬으로 MongoDB 데이터를 백업하고 복원하는 방법에 대해 알아보겠습니다. 파이썬에서는 PyMongo 라이브러리를 사용하여 MongoDB와 상호 작용할 수 있습니다. 이를 활용하여 데이터의 백업과 복원을 간편하게 수행할 수 있습니다.
목차
MongoDB 데이터 백업
MongoDB 데이터를 백업하기 위해서는 다음과 같은 단계를 따를 수 있습니다.
- PyMongo 라이브러리를 설치합니다. 다음 명령을 사용하여 설치할 수 있습니다.
pip install pymongo
- MongoDB에 연결합니다. PyMongo를 사용하여 MongoDB와 연결하는 코드는 다음과 같습니다.
from pymongo import MongoClient
# MongoDB에 연결
client = MongoClient("mongodb://localhost:27017")
- 백업할 데이터를 선택합니다. 예를 들어,
mydb
데이터베이스의mycollection
콜렉션을 백업하려면 다음처럼 선택할 수 있습니다.
db = client["mydb"]
collection = db["mycollection"]
- 데이터를 백업합니다.
collection.find()
메서드를 사용하여 모든 데이터를 가져온 후, 필요한 작업을 수행할 수 있습니다. 이 예제에서는 데이터를 JSON 파일로 저장하는 방법을 보여줍니다.
import json
# 모든 데이터 가져오기
data = collection.find()
# JSON 파일로 저장하기
with open("backup.json", "w") as file:
for document in data:
json.dump(document, file)
file.write("\n")
이제 backup.json
파일에 MongoDB의 데이터가 백업됩니다.
MongoDB 데이터 복원
백업된 MongoDB 데이터를 복원하는 방법에 대해 알아보겠습니다.
- 복원할 데이터를 선택합니다. 예를 들어,
mydb
데이터베이스의mycollection
콜렉션에 데이터를 복원하려면 다음처럼 선택할 수 있습니다.
db = client["mydb"]
collection = db["mycollection"]
- 백업된 데이터를 가져옵니다. 이 예제에서는
backup.json
파일에서 데이터를 가져옵니다.
import json
# 백업 데이터 읽어오기
with open("backup.json", "r") as file:
data = json.load(file)
- 데이터를 복원합니다.
collection.insert_one()
또는collection.insert_many()
메서드를 사용하여 데이터를 복원할 수 있습니다.
# 데이터 복원
collection.insert_many(data)
이제 백업된 데이터가 MongoDB에 복원되었습니다.
이렇게 파이썬(PyMongo)을 사용하여 MongoDB 데이터를 백업하고 복원할 수 있습니다. 이를 활용하여 데이터의 안전한 보관과 복구를 수행할 수 있습니다.