<aside> ✅ 오픈 소스 관계형 데이터베이스 관리시스템으로 웹 애플레키에션을 포함한 다양한 애플리케이션에서 많이 사용됩니다. MySQL의 중요 장점 중 몇 가지를 코드 예시와 함께 설명해드리겠습니다.

</aside>

확장성

-- 마스터 서버 설정 예시 (my.cnf / my.ini 파일)
[mysqld]
log-bin=mysql-bin
server-id=1

-- 슬레이브 서버 설정 예시 (my.cnf / my.ini 파일)
[mysqld]
server-id=2
relay-log=mysqld-relay-bin

읽기 성능을 향상시키기 위해 레플리케이션을 지원합니다. 마스터-슬레이브 레플레케이션을 설정하여 데이터 읽기 요청을 여러 슬레이브에 분산 시킬 수 있습니다.

객체 관계형 데이터베이스의 기능

-- JSON 데이터 타입을 사용하는 테이블 예시
CREATE TABLE user_profiles (
    id INT AUTO_INCREMENT PRIMARY KEY,
    profile JSON
);

-- JSON 데이터 삽입 예시
INSERT INTO user_profiles (profile)
VALUES ('{"name": "John Doe", "age": 30, "skills": ["MySQL", "SQL"]}');

기본적으로 관계형 데이터베이스 기능을 중심으로 설계되었지만, JSON 데이터 타입을 지원하여 NoSQL 스타일의 데이터 저장 및 쿼리를 가능하게 합니다.

데이터 보호

-- 사용자 생성 및 권한 부여 예시
CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'password';
GRANT SELECT, INSERT, UPDATE ON database_name.* TO 'new_user'@'localhost';

MySQL은 SSL을 통한 연결 암호화와 엑세스 제어를 통해 데이터 보호 기능도 제공합니다. 사용자 및 권한 관리를 통해 데이터 접근을 세밀하게 제어할 수 있습니다.