데이터베이스와 MongoDB의 개념

이정기·2022년 12월 14일
0

TIL

목록 보기
44/71
post-thumbnail

데이터베이스란

단순히 데이터를 잘 저장하고 잘 찾기 위해 만들어진 소프트웨어
Database Management System(DBMS) 이라 부른다.
DB 서버의 모든 데이터는 DBMS가 관리

데이터베이스 종류

관계형 데이터베이스 - Relational Database (RDB)

데이터 형식이 정해져 있고, 데이터 끼리 관계를 맺어 모순이 없는 데이터를 유지할 수 있도록 도와주는것에 집중한 데이터베이스
모순이 없는 데이터: 무결성과 정합성이 높은 데이터

비관계형 데이터베이스 - Non-relational Database (NoSQL)

데이터의 형태가 고정되어 있지 않고 유연하게 확장할 수 있지만, 유연한 만큼 저장되는 데이터를 제대로 관리하지 않으면 데이터베이스에 저장된 데이터를 신뢰할 수 없게 되기도 한다.
최근 많은 스타트업에서 유연한 설계를 위해 많이 채택

MongoDB 특징

  • 비관계형 데이터베이스 (NoSQL) 중 하나
  • 모든 데이터가 JSON 형태로 저장
  • 복잡한 구조를 쉽게 저장할 수 있는 장점
  • 공짜
  • 스케일을 쉽게 줄이고 늘일 수 있다.

웹 서버와 DB 서버 관계

  • 웹 서버는 웹 클라이언트가 원하는 데이터와 기능을 제공
  • DB 서버는 데이터를 최대한 성능 좋게 저장하고 DB 클라이언트가 원하는 데이터를 제공
  • 웹 서버는 DB 서버를 이용하는 DB 클라이언트가 될 수 있다.

MongoDB 설치

homebrew 이용

//설치전 xcode-select 설치
xcode-select --install

//MongoDB 및 Database Tools용 공식 Homebrew 공식을 다운로드
brew tap mongodb/brew

brew update

//몽고디비 설치
brew install mongodb-community@6.0

MongoDB 실행

brew services start mongodb-community

MongoDB 실행 중지

brew services stop mongodb-community@6.0

MongoDB(예: mongod프로세스) 를 백그라운드 프로세스로 수동으로 실행

M1 전용
mongod --config /opt/homebrew/etc/mongod.conf --fork

MongoDB 실행확인

macOS 서비스로 시작한 경우

brew services list

백그라운드 프로세스로 MongoDB를 수동으로 시작한 경우

ps aux | grep -v grep | grep mongod

주소 접속

http://localhost:27017

// It looks like you are trying to access MongoDB over HTTP on the native driver port. 

주소 안에 해당 문구가 뜨면 제대로 설치 된 것.

MongoDB 연결 및 사용

새 터미널에 입력

mongosh

CRUD 작업 문서

문서 중간 쯤 CRUD 확인

Studio 3T

mongodb 에 내용을 조회하고 컨트롤하기에 용이한 GUI

홈페이지 다운로드

https://studio3t.com/download-studio3t-free
profile
Node.js 로 꿈을 꾸었다..

0개의 댓글