pageservice.tistory.com

서버 & 백엔드 기초/Mongo DB

『백엔드와 DB 연결: Express + MongoDB 』 강의안

free21 2025. 6. 25. 14:39

MongoDB 설치 후 Express 서버 연결하기 (총 4회차 강의)


1회차. 환경 변수 설정과 MongoDB 연결 문자열 이해

용어 설명

MongoDB

NoSQL 기반의 비정형 데이터베이스로, JSON 형식의 데이터를 문서(document) 단위로 저장합니다.

.env 파일

환경 변수 파일로, 서버 설정 정보를 외부로 분리해 관리합니다. 보안상 중요한 값도 이곳에 둡니다.

핵심 개념

  • MongoDB는 기본적으로 127.0.0.1:27017 포트를 사용합니다.
  • 데이터베이스 이름은 접속 시 명시하며, 해당 이름의 DB가 없다면 자동 생성됩니다.
  • .env 파일에 설정한 값은 코드 내에서 process.env.변수명으로 불러올 수 있습니다.

예제 코드

# server/.env
PORT=5000
MONGO_URI=mongodb://localhost:27017/ai-edu-platform
JWT_SECRET=your_jwt_secret_key_here
CLIENT_ORIGIN=http://localhost:5173

단계 요약

  • MongoDB 기본 포트 및 데이터베이스 이름 구조 이해
  • .env 파일 생성 및 작성
  • JWT_SECRET, CLIENT_ORIGIN 등 의미 파악

2회차. MongoDB 연결 파일 작성 (Mongoose 사용)

용어 설명

Mongoose

MongoDB를 Node.js에서 쉽게 다루기 위한 ODM(Object Data Modeling) 라이브러리입니다.

주요 개념

  • mongoose.connect() 함수로 MongoDB에 연결
  • 옵션: useNewUrlParser, useUnifiedTopology는 연결 안정성을 높이기 위한 설정
  • 에러 발생 시 로그 출력 후 프로세스 종료

예제 코드

// server/config/db.js
import mongoose from 'mongoose';

const connectDB = async () => {
  try {
    const conn = await mongoose.connect(process.env.MONGO_URI, {
      useNewUrlParser: true,
      useUnifiedTopology: true,
    });
    console.log(`MongoDB Connected: ${conn.connection.host}`);
  } catch (error) {
    console.error(`MongoDB Error: ${error.message}`);
    process.exit(1);
  }
};

export default connectDB;

단계 요약

  • Mongoose 설치 및 개념 이해
  • 연결 함수 connectDB() 작성
  • 연결 에러에 대한 예외 처리 적용

3회차. Express 서버와 MongoDB 연결

용어 설명

Express

Node.js 기반의 웹 서버 프레임워크로, 빠르게 API 서버를 구축할 수 있습니다.

핵심 개념

  • dotenv.config()는 .env 파일을 불러오기 위한 초기 설정
  • connectDB()는 서버 시작 전 실행되어야 합니다
  • 서버는 지정 포트(PORT)로 실행

예제 코드

// server/index.js
import express from 'express';
import dotenv from 'dotenv';
import connectDB from './config/db.js';

dotenv.config();
connectDB(); // MongoDB 연결

const app = express();

// 기타 미들웨어 및 라우터 설정 가능

app.listen(process.env.PORT || 5000, () => {
  console.log(`Server running on port ${process.env.PORT}`);
});

단계 요약

  • Express 서버 기초 설정
  • MongoDB 연결 함수 통합
  • 서버 실행 및 포트 확인


4회차. MongoDB 실행 상태 확인 및 서버 구동 테스트

용어 설명

mongosh

MongoDB 쉘 클라이언트로, 데이터베이스에 직접 접속해 상태 확인 가능

확인 방법

macOS/Linux

sudo systemctl start mongod
sudo systemctl status mongod

Windows

  • “MongoDB Server” 서비스 실행 여부 확인
  • 또는 CMD에서 mongosh 입력

접속 성공 시

test>

서버 실행

cd server
npm install
node index.js

실행 결과 예시

MongoDB Connected: 127.0.0.1
Server running on port 5000

단계 요약

  • MongoDB 서비스가 정상 실행 중인지 확인
  • mongosh 접속으로 DB 확인
  • Express 서버 실행 → DB 연결 여부 로그 확인

최종 요약

회차 핵심 작업

1회차 .env 파일 구성 및 환경 변수 이해
2회차 config/db.js에서 MongoDB 연결 함수 작성
3회차 서버 파일(index.js)에서 DB 연결 및 서버 실행
4회차 MongoDB 서비스 실행 확인 및 서버 정상 구동 테스트

 

 

💬 댓글

이번 글이 도움이 되었길 바랍니다. 궁금한 점이나 요청이 있다면 언제든 댓글로 남겨주세요. 댓글은 저에게 큰 힘이 됩니다. 다음 글도 기대해주세요.
▲ TOP