What is MySQL?

숭맹이·2025년 4월 22일

MySQL이란?

MySQL은 오라클이 개발 및 지원하는 세계에서 가장 인기 있는 오픈 소스 SQL 데이터베이스 관리 시스템(DBMS)입니다.

  • DBMS(Database Management System): 데이터를 추가, 조회, 갱신, 삭제(CRUD)할 수 있도록 지원하는 소프트웨어
  • RDBMS(Relational DBMS): 데이터를 테이블 단위로 분리 저장하고, 테이블 간 관계를 설정하는 시스템
  • SQL(Structured Query Language): 데이터베이스를 조작하는 표준 질의 언어
  • 오픈 소스: 무료 사용 및 소스 코드 수정 가능(GPL 라이선스)

MySQL 주요 특징

1. 관계형 데이터베이스

  • 데이터를 테이블로 구분해 저장
  • 테이블 간 1:1, 1:N, M:N 관계 설정 가능
  • 제약조건(Primary Key, Foreign Key, Unique 등)을 통해 데이터 무결성 보장

2. 표준 SQL 지원

  • ANSI/ISO SQL 표준 기반
  • 다양한 SQL 문법과 확장 기능 지원

3. 높은 성능과 확장성

  • 단일 서버에서 경량 운영 가능
  • 서버 전용 최적화 설정 가능
  • 대규모 클러스터 구성도 지원 (InnoDB Cluster, Group Replication)

4. 다양한 클라이언트 및 API 지원

  • 다양한 언어와의 연동: Java(JDBC), Python(PyMySQL), Node.js(mysql2) 등
  • 풍부한 관리 툴: MySQL Workbench, phpMyAdmin 등

5. 오픈 소스와 상용 라이선스

  • 기본 GPL 버전은 무료 사용 가능
  • 상용 라이선스 구매 시, 소스 수정 없이도 상업적 배포 가능

실전에서 보는 MySQL

단일 서버 운영 시 고려사항

  • 인덱스 설계: 읽기 성능 최적화의 핵심
  • 쿼리 튜닝: EXPLAIN, ANALYZE를 활용한 쿼리 최적화
  • 스키마 설계: 정규화와 비정규화 균형 잡기
  • 백업과 복구 전략: mysqldump, xtrabackup 사용

대규모 시스템에서의 MySQL

  • Replication: Master-Slave 구성으로 읽기 부하 분산
  • Sharding: 데이터 분산 저장으로 쓰기 병목 해결
  • High Availability: MHA, Group Replication, ProxySQL 등 사용
  • Monitoring: PMM(Percona Monitoring and Management) 도구 활용

HeatWave: MySQL의 새로운 무기

HeatWave는 트랜잭션, 분석, 머신러닝을 하나의 MySQL DB 안에서 모두 처리할 수 있도록 지원하는 인메모리 가속 서비스입니다.

  • 복잡한 ETL 없이 트랜잭션 데이터로 직접 실시간 분석 가능
  • 별도의 DWH 구축 없이 데이터 웨어하우스와 유사한 성능 제공
  • OCI, AWS, Azure에서 지원
profile
👨🏻‍💻 Backend Developer

0개의 댓글