본문 바로가기

MySQL4

[RealMySQL 8.0] 7장 데이터 암호화 8.0 부터 데이터 파일뿐만 아니라 리두 로그나 언두 로그, 복제를 위한 바이너리 로그도 암호화 기능을 지원한다.7.1 MySQL 서버의 데이터 암호화암호화 기능은 디스크 InnoDB 사이에서 암복화 과정이 수행된다.TDE, Transparent Data Encryption 이라고 한다.TDE 에서 암호화 키는 키링 플러그인에 의해 관리된다.keyring_file: 암호화 키를 파일로 저장한다.커뮤니티 에디션에서는 keyring_file 플러그인만 지원한다.keyring_encrypted_filekeyring_okvkeyring_aws다양한 플러그인은 마스터키를 관리하는 방법만 다르다.MySQL 암호화는 2단계 암호화를 사용한다.데이터는 테이블스페이스키로 암호화된다.테이블스페이스키는 변하지 않는 키이다.. 2025. 1. 9.
[RealMySQL 8.0] 4장 아키텍처 4.1 MySQL 엔진 아키텍처쿼리의 처리는 MySQL 엔진 -> 스토리지 엔진 순서로 처리된다.MySQL 엔진MySQL의 핵심적인 기능이 담겨있는 부분이다. 다음 내용은 처리 순서대로 아키텍처를 설명한 것이다.클라이언트의 연결을 생성한다. : 커넥션 핸들러가 담당한다.문자열인 SQL을 MySQL이 처리할 수 있도록 구조화한다. : SQL 파서가 담당한다.기본 문법 오류는 여기서 발견된다.구조화된 SQL이 유효한 지 검사한다 : 전처리기가 담당한다.테이블 이름, 칼럼 이름, 내장 함수들이 존재하는지 확인한다.권한을 확인한다.쿼리를 효과적으로 실행하기 위해 쿼리 실행 계획을 작성한다. : 옵티마이저가 담당한다.가장 저렴한 비용으로 쿼리를 수행하기 위한 전략을 세운다.데이터의 통계 정보, 인덱스 정보 등을 .. 2024. 12. 16.
[RealMySQL 8.0] 3장 사용자 및 권한 3.1 사용자 식별MySQL은 사용자 계정과 접속 위치로 계정을 식별한다.모든 외부 클라이언트에서 접속이 가능하다면 'user_id'@'%' 처럼 호스트부분을 % 문자로 대체하면 된다.로그인 시 권한이나 계정 정보는 가장 작은 범위에 해당하는 정보에 매칭된다.관리 편의상 가급적 중복이 되지 않도록 하자.3.2 사용자 계정 관리8.0 부터 계정은 시스템 계정과 일반 계정으로 구분된다.시스템 계정 : SYSTEM_USER 권한을 가지고 있다. 데이터베이스 관리를 위한 계정이다.계정관리, 타 세션 쿼리 강제 종료 등이 가능하다.일반 계정 : SYSTEM_USER 권한을 가지고 있지 않다. 일반적인 데이터베이스 사용을 위한 계정이다.내장된 계정'mysql.sys'@localhost : 내장 스키마 객체의 DEF.. 2024. 12. 14.
[RealMySQL 8.0] 1장. 소개, 2장. 설치와 설정 1.1 MySQL 소개MySQL이 오픈소스인 것은 여러 회사에서 MySQL이 사용되는 중요한 이유이다.그러나, MySQL이 처음부터 오픈소스였던 것은 아니다. 약 45년전인 1979년 Tcx 사의 사내 터미널 인터페이스에서부터 시작해 사내 데이터베이스로 변모 과정을 거쳐 1996년 사외에 공개됐다.MySQL은 오픈소스이나, 무제한적으로 사용할 수 있는 것은 아니다. 두 가지 라이센스 정책이 있다.MySQL 커뮤니티 에디션은 별도의 라이선스 계약 없이 사용할 수 있다. 소스코드도 공개된다.MySQL 엔터프라이즈 에디션은 커뮤니티 에디션에 스레드풀 등 추가 기능을 덧붙인 에디션이다. 오라클과 사용 계약을 맺고 사용해야하며, 소스코드는 공개되지 않는다.MySQL은 5.7 버전까지는 성능 개선이 주를 이뤘으나,.. 2024. 12. 10.