본문 바로가기
카테고리 없음

데이터베이스란 무엇이고 왜 필요할까|웹사이트가 정보를 기억하는 방법

by by_merry 2026. 4. 21.

회원가입을 한 사이트에 다시 들어갔는데, 내 아이디와 비밀번호가 그대로 남아 있는 경우가 있다. 쇼핑몰에서는 내가 전에 주문했던 상품이 남아 있고, 유튜브에서는 예전에 본 영상 기록이 저장되어 있다.

처음에는 그냥 사이트가 “기억하고 있는 것”처럼 느껴진다. 그런데 사실은 웹사이트 뒤에 데이터베이스(Database)라는 것이 있기 때문에 가능한 일이다.

프로그래밍을 처음 배우면 HTML, CSS, JavaScript처럼 화면에 보이는 것만 먼저 배우게 된다. 하지만 실제 웹사이트를 만들다 보면 어느 순간 이런 문제가 생긴다.

  • 회원 정보를 어디에 저장하지?
  • 게시글은 어떻게 남겨두지?
  • 로그인한 사람을 어떻게 기억하지?

이때 필요한 것이 바로 데이터베이스다.

 

데이터베이스는 무엇일까

데이터베이스는 쉽게 말하면, 정보를 저장해두는 공간이다.

조금 더 쉽게 말하면 “컴퓨터용 창고” 또는 “엄청 큰 엑셀 파일”에 가깝다.

예를 들어 쇼핑몰이라면 아래와 같은 정보가 필요하다.

  • 회원 이름
  • 아이디
  • 비밀번호
  • 상품 이름
  • 가격
  • 주문 내역

이런 정보를 그냥 메모장에 적어둘 수도 있다. 하지만 사용자가 수천 명, 상품이 수만 개가 되면 메모장으로는 관리가 불가능하다.

그래서 정보를 체계적으로 저장하고, 필요할 때 빠르게 찾을 수 있게 만든 것이 데이터베이스다.

예를 들어 데이터베이스 안에는 이런 식으로 정보가 들어 있을 수 있다.

아이디 이름 나이
mary123 Mary 20
tom456 Tom 22

즉, 데이터베이스는 여러 사람의 정보를 표처럼 저장하는 시스템이다.

왜 그냥 파일로 저장하면 안 될까

처음에는 “그냥 txt 파일이나 Excel 파일로 저장하면 되는 거 아닌가?”라는 생각이 든다.

나도 처음에는 회원 정보를 메모장에 적어두면 될 줄 알았다.

하지만 실제 웹사이트에서는 문제가 많다.

예를 들어 회원이 10,000명이라고 해보자.

그중에서 아이디가 mary123인 사람을 찾아야 한다면, txt 파일은 처음부터 끝까지 하나씩 읽어야 한다.

하지만 데이터베이스는 필요한 정보만 바로 찾을 수 있다.

즉:

  • txt 파일 → 전부 읽어야 함
  • 데이터베이스 → 원하는 정보만 빠르게 찾음

이라는 차이가 있다.

또 여러 사람이 동시에 접속하면 파일이 꼬이거나 저장이 잘못될 수도 있다. 하지만 데이터베이스는 동시에 수많은 사람이 사용해도 안정적으로 동작하도록 만들어져 있다.

웹사이트는 데이터베이스를 어떻게 사용할까

예를 들어 사용자가 회원가입을 했다고 해보자.

그러면 웹사이트는 사용자가 입력한 정보를 데이터베이스에 저장한다.

예를 들어:

아이디: mary123
비밀번호: 1234
이름: Mary

같은 정보가 저장된다.

그리고 다음에 사용자가 로그인하면, 서버는 데이터베이스를 찾아본다.

“mary123라는 아이디가 있는가?”

“비밀번호가 맞는가?”

를 확인한 뒤, 맞으면 로그인시켜준다.

즉, 데이터베이스는 웹사이트의 기억장치 같은 역할을 한다.

만약 데이터베이스가 없다면, 사용자가 새로고침할 때마다 모든 정보가 사라질 것이다.

데이터베이스는 어디에 많이 쓰일까

데이터베이스는 거의 모든 웹사이트와 앱에서 사용된다.

예를 들어:

  • 인스타그램 → 회원 정보, 게시글, 댓글
  • 유튜브 → 영상 목록, 조회수, 구독 정보
  • 쇼핑몰 → 상품, 주문, 장바구니
  • 게임 → 캐릭터 정보, 레벨, 아이템
  • 은행 앱 → 계좌, 거래 내역

즉, 정보를 저장해야 하는 서비스라면 거의 반드시 데이터베이스가 필요하다.

특히 우리가 매일 사용하는 앱 대부분은 뒤에서 엄청 큰 데이터베이스를 사용하고 있다.

데이터베이스에도 종류가 있다

데이터베이스는 하나만 있는 것이 아니다.

대표적으로는:

  • MySQL
  • PostgreSQL
  • MongoDB
  • SQLite

같은 종류가 있다.

처음에는 이름이 많아서 어렵게 느껴질 수 있다. 하지만 가장 큰 차이는 “표처럼 저장하느냐”와 “자유롭게 저장하느냐”다.

예를 들어 MySQL은 엑셀처럼 표 형태로 저장한다.

아이디 이름 나이
mary123 Mary 20

반면 MongoDB는 JSON처럼 저장한다.

{
  "id": "mary123",
  "name": "Mary",
  "age": 20
}

그래서 MySQL은 정리된 표가 필요한 서비스에 많이 쓰이고, MongoDB는 구조가 자주 바뀌는 데이터에 많이 쓰인다.

왜 데이터베이스를 배우는 것이 중요할까

HTML, CSS, JavaScript만으로는 화면만 만들 수 있다.

예를 들어 로그인 창을 예쁘게 만들 수는 있다. 하지만 실제로 로그인을 하려면, 사용자의 정보를 저장할 곳이 필요하다.

그 역할을 하는 것이 데이터베이스다.

그래서 프론트엔드와 백엔드를 조금 더 배우다 보면 결국 데이터베이스까지 연결하게 된다.

예를 들어:

  • HTML → 화면 만들기
  • JavaScript → 버튼 동작 만들기
  • Node.js → 서버 만들기
  • 데이터베이스 → 정보 저장하기

처럼 연결된다.

즉, 데이터베이스가 있어야 웹사이트가 단순한 화면이 아니라 “기억하는 서비스”가 될 수 있다.

나도 처음에는 데이터베이스라는 단어가 너무 어렵게 느껴졌다. 그런데 “웹사이트가 기억을 저장하는 곳”이라고 생각하니까 훨씬 이해하기 쉬웠다.

한 줄로 정리하면

데이터베이스는 정보를 저장하고, 필요할 때 빠르게 꺼내기 위한 시스템이다.

그리고 회원가입, 로그인, 게시글, 장바구니처럼 웹사이트가 무언가를 기억해야 할 때 반드시 필요하다.