MongoDB 사용법 완벽 가이드: 초보자를 위한 2025년 최신 튜토리얼

MongoDB 사용법을 초보자도 쉽게 따라 할 수 있도록! 데이터베이스 생성, 컬렉션 관리, 데이터 삽입/조회/업데이트 방법까지 2025년 최신 가이드로 배워보세요.

 

MongoDB는 NoSQL 데이터베이스의 대표주자입니다. 초보자도 쉽게 데이터 관리, 삽입, 조회를 할 수 있어 개발자들 사이에서 인기입니다. MongoDB 사용법, MongoDB 설치, MongoDB 쿼리를 검색하며 막막했던 당신! 이 글은 MongoDB 기초부터 실전까지, 2025년 최신 트렌드를 반영해 친절히 알려드립니다. 데이터베이스 관리의 첫걸음을 함께 시작해볼까요?

 

MongoDB란? NoSQL의 매력

MongoDB는 문서 지향 NoSQL 데이터베이스로, JSON과 유사한 BSON 형식으로 데이터를 저장합니다. 관계형 데이터베이스와 달리 유연한 스키마로 데이터를 빠르게 처리할 수 있습니다. MongoDB 설치 후, 데이터베이스 생성, 컬렉션 관리, 데이터 조회 등 다양한 작업을 쉽게 수행할 수 있습니다.

 

왜 MongoDB인가?

  • 스키마가 유연해 데이터 구조 변경이 쉬움
  • 대용량 데이터 처리에 최적화
  • 초보자 친화적인 명령어 제공

 

MongoDB 설치 및 연결 방법

1. MongoDB 설치

MongoDB를 시작하려면 먼저 공식 사이트에서 설치하세요. MongoDB 공식 다운로드 페이지를 방문해 최신 버전을 설치합니다.

  1. 운영체제 선택: Windows, macOS, Linux 지원
  2. 설치 후 확인: 터미널에서 mongod --version 입력
  3. MongoDB Compass: GUI로 쉽게 관리 가능 (MongoDB Compass)

2. MongoDB 연결

MongoDB에 연결하려면 URI를 사용합니다. 예시로 제공된 연결 문자열을 참고하세요:

mongodb://User:Passwd@10.106.222.203:27017/?authSource=admin&readPreference=primary&appname=MongoDB%20Compass&ssl=false

  • User: 사용자 이름
  • Passwd: 비밀번호
  • 10.106.222.203:27017: 서버 주소 및 포트
  • authSource=admin: 인증 데이터베이스

터미널에서 mongo 로 연결하거나, MongoDB Compass에서 URI를 입력해 접속하세요.

 

MongoDB 기본 명령어 익히기

MongoDB는 간단한 명령어로 데이터베이스를 관리할 수 있습니다. 아래는 초보자가 반드시 알아야 할 MongoDB 명령어들입니다.

1. 데이터베이스 관리

  • show dbs: 현재 서버에 있는 데이터베이스 목록을 확인합니다.
  • db: 현재 사용 중인 데이터베이스를 출력합니다.
  • db.stats(): 현재 데이터베이스의 상태를 확인합니다.
  • use : 특정 데이터베이스로 전환하거나, 존재하지 않으면 생성합니다.
  • db.dropDatabase(): 현재 데이터베이스를 삭제합니다.

2. 컬렉션 생성 및 관리

컬렉션은 MongoDB의 테이블과 유사한 개념입니다. 다음 명령어로 관리할 수 있습니다:

  • 컬렉션 생성:
    db.createCollection("book", { capped: true, size: 6142800, max: 10000 })
  • 컬렉션 삭제:
    db.book.drop()

 

데이터 삽입 및 조회

1. 데이터 삽입

MongoDB는 데이터를 문서(Document) 단위로 저장합니다. 예시 데이터를 참고해 삽입 방법을 배워봅시다:

[
  { "_id": 8522, "title": "300215-2239541", "author": "385-02022-566-25", "copies": 1 },
  { "_id": 7120, "title": "470505-2977489", "author": "345-028839-14215", "copies": 10 }
]

  • 단일 문서 삽입:
    db.book.insert({ "name": "abc" })
  • 다중 문서 삽입:
    db.book.insert([{ "name": "abc" }, { "name": "def" }])

2. 데이터 조회

데이터 조회는 find() 메서드를 사용합니다.

  • 모든 문서 조회:
    db.books.find()
  • 깔끔한 출력:
    db.books.find().pretty()
  • 정렬:
    db.books.find().sort({ "hits": 1 }).pretty() // 오름차순
    db.books.find().sort({ "hits": -1 }).pretty() // 내림차순
  • 출력 제한:
    db.books.find().limit(2).pretty() // 2개 문서만 출력
  • 조건 조회:
    db.books.find({ $where: "this.name == 'A'" }).pretty()

 

데이터 업데이트 및 삭제

1. 데이터 업데이트

데이터를 수정하려면 update() 메서드를 사용합니다.

  • 특정 필드 업데이트:
    db.book.update({ "hits": 110 }, { $set: { "hits": 120 } })
  • 새 필드 추가:
    db.book.update({ "hits": 120 }, { hits: 125, name: "AA" })
  • 배열 추가:
    db.book.update({ name: "F" }, { $push: { category: "science" } })

2. 데이터 삭제

  • 특정 문서 삭제:
    db.book.remove({ "name": "def" })

 

실전 팁: 페이징 구현

페이징은 대량 데이터를 효율적으로 조회할 때 유용합니다. 아래는 페이지별로 데이터를 조회하는 함수입니다:

var showpage = function(page) {
  return db.books.find().sort({ "hits": -1 }).skip((page-1)*2).limit(2);
}
showpage(1) // 첫 번째 페이지
showpage(2) // 두 번째 페이지

  • skip(): 지정한 수만큼 문서를 건너뜀.
  • limit(): 출력할 문서 수 제한.

 

자주 묻는 질문 (FAQ)

Q: MongoDB는 초보자도 쉽게 배울 수 있나요?

A: 네, MongoDB는 직관적인 명령어와 유연한 구조로 초보자도 쉽게 익힐 수 있습니다. MongoDB 공식 문서를 참고하세요.

Q: MongoDB와 MySQL의 차이점은?

A: MongoDB는 NoSQL로, 스키마가 유연하고 JSON 형태로 데이터를 저장합니다. MySQL은 관계형 데이터베이스로 테이블 기반입니다.

Q: MongoDB 연결 오류가 발생하면?

A: URI의 사용자 이름, 비밀번호, 서버 주소를 확인하세요. 방화벽 설정도 점검해야 합니다.

 

결론

MongoDB는 NoSQL 데이터베이스의 강력한 도구로, 데이터베이스 생성, 컬렉션 관리, 데이터 삽입/조회/업데이트를 간단히 처리할 수 있습니다. 이 가이드를 따라 MongoDB 설치, 기본 명령어, 실전 팁을 익혔으니, 이제 여러분의 프로젝트에 적용해볼 차례입니다! 궁금한 점이 있다면 댓글로 남겨주세요. 다음 글에서는 MongoDB와 Python 연동 방법을 깊이 파헤쳐볼게요!

내부 링크:

외부 링크:

 

💬 댓글로 여러분의 MongoDB 사용 팁을 공유해주세요! 이 글이 도움이 되었다면 주변에 공유 부탁드립니다!

댓글

Designed by JB FACTORY