
DB와 Docker, SQL
화요일 쇼핑몰 프로젝트의 백엔드 부분을 구현하기 위해서 필수적으로 요하는 DB를 학습
데이터베이스란?
데이터를 통합하여 효율적으로 관리하기 위한 집합체를 DB
이런 DB를 구조화하여 관리함으로써 중복을 막고, 효율적이고 빠른 연산을 할 수 있다.
SQL이란?
데이터베이스에 연산을 요청하기 위해 사용되는 언어로 데이터 CRUD와 같은 기능을 수행할 수 있다
도커란?
도커는 호스트 컴퓨터의 OS 위에서 독립적인 컨테이너를 기반으로 어플리케이션을 돌릴 수 있게하는 도구

도커는 호스트 컴퓨터의 OS 위에서 독립적인 컨테이너를 기반으로 어플리케이션을 돌릴 수 있게하는 도구
우리는 MariaDB를 도커로 띄워서 실습할껍니다.
실습하기
docker pull mariadb ## mariadb 설치

docker runl --name mariadb -d -p 3306:3306 --restart=always -e MYSQL_ROOT_PASSWORD=root mariadb ## cli로 실행하기

Bind for 0.0.0.0:3306 failed: port is already allocated
이미 누군가 3306 을 사용중이라 충돌 발생으로 인한 에러

docker ps 명령어로 현재 누가 사용중인지 확인!

docker exec -it mariadb-tennis mariadb -u root -p
기존 컨테이너 접속!
mariadb-tennis 에 접근해라!!
(사실 필자가 강의를 한 번 더 보면서 학습한 내용을 복습하는 와중에 발생..)
docker run --name mariadb -d -p 3306:3306 --restart=always -e MYSQL_ROOT_PASSWORD=root mariadb

강의에는 mysql -u root -p
를 사용하라고 했지만
필자는 이미 컨테이너 안으로 들어온 상태라 그런지 mysql 구문이(명령어)가 존재하지 않는다고 하며 에러발생
mysql -> mariadb 로 변경해주면
PW를 입력후 마리아 디비안으로 성공적으로 들어온 모습을
MariaDB [(none)]> 으로 알 수 있다~
지금까지 한 내용을 정리해보자면
- Docker desktop 프로그램 실행
- cmd(윈도우) 또는 터미널(맥) 실행
- mariadb가 있는 컨테이너 접속 : docker exec -it mariadb /bin/bash
- mariadb 실행 : mysql -u root -p
데이터 조회 및 삽입
데이터베이스 보기: SHOW DATABASES;

데이터베이스 생성: CREATE DATABASE 테이블이름;

특정 데이터베이스 사용: USE '테이블명';

테이블 생성

CREATE TABLE member (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255),
password VARCHAR(255)
);
다음과 같이 생성
테이블 데이터 삽입: INSERT 컬럼명1, 컬럼명2, ...INTO 테이블명 VALUES (컬럼1 데이터, 컬럼2 데이터, ...

테이블 데이터 조회: SELECT 컬럼명 FROM 테이블명; 특정 데이터 조회: SELECT * FROM 테이블명 WHERE 조건;

특정 데이터 수정: UPDATE 테이블명 SET 수정할 컬럼: '수정할 값' WHERE 조건;

아이디가 junghyun 에 해당하는 행의 패스워드 값이 aaaaa로 변경된 모습
특정 데이터 삭제: DELETE FROM 테이블명 WHERE 조건;


Node.js와 DB 연결하기





'pgms' 카테고리의 다른 글
| [2주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 11 (3) | 2026.01.16 |
|---|---|
| [2주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 10 (0) | 2026.01.15 |
| [2주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 8 (0) | 2026.01.12 |
| [1주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 7 (0) | 2026.01.09 |
| [1주차] - [9기] 타입스크립트로 함께하는 웹 풀 사이클 개발(React, Node.js) 10회차 - 6 (0) | 2026.01.08 |