Database/Mysql 16

[Real MySQL] 4-4. 아키텍쳐: MySQL 로그 파일

"Real MySQL" 책을 정리한 포스팅 입니다.에러 로그 파일실행되는 도중에 에러나 경고로 인해 출력되는 메시지의 로그 파일.err 확장자로 datadir에 생성됨. 서버 시작 관련변수명을 인식하지 못한 경우특정 변수가 무시된 경우 트랜잭션 복구 메시지 (비정상적으로 종료된 경우)재처리 작업 과정완료되지 못한 트랜잭션을 정리디스크 기록 쿼리 에러 메시지쿼리 도중 발생하는 문제점이 기록 비정상적으로 종료된 커넥션 메시지클라이언트의 애플리케이션에서 접속하지 못할 경우 발생커넥션 갯수가 max_connect_errors 값이 넘어가면 연결 불가 상태 조회 명령의 결과 메시지테이블 모니터링락 모니터링InnoDB 스토어드 엔진 조회 종료 메시지정상 종료될 경우"Received SHUTDOWN from use..

Database/Mysql 2023.11.24

[Real MySQL] 4-2. 아키텍쳐: InnoDB 스토리지 엔진 아키텍쳐

"Real MySQL" 책을 정리한 포스팅 입니다. 아키텍쳐기능잠금 (레코드 기반) 장점성능높은 동시성 처리안정적 클러스터링 (by primary key)프라이머리 키를 기준으로 데이터가 정렬되어 저장됨프라이머리 키는 다른 보조 인덱스에 비해 가중치가 높게 설정됨 외래 키 지원슈퍼타입-서브타입 모두 해당 컬럼에 인덱스 생성 필요잠금이 여러 테이블로 전파됨 (데드락 발생 가능성 O)foreign_key_checks(참조 무결성 제약원칙 체크 활성화)OFF: 외래 키 관계의 부모 테이블에 대한 작업 무시 (cascade) MVCC (Multi Version Concurrency Control)레코드 레벨의 동시성 제어 기법 Non-Locking Consistent Reads하나의 레코드에 대해 두 개의 버..

Database/Mysql 2023.11.24

[Real MySQL] 4-1. 아키텍쳐: MySQL 엔진 아키텍쳐

"Real MySQL" 책을 정리한 포스팅 입니다. ArchitectureMySQL EngineSQL 분석 (파싱, 최적화)Connection Handler, SQL Parser, Optimizer Storage Engine데이터 읽기 + 쓰기 (from Disk) 특징성능 향상을 위한 기능 제공MyISAM: 키 캐시InnoDB: 버퍼 풀여러 개 사용 가능테이블 별 지정 가능CREATE TABLE test_table (fd1 INT, fd2 INT) ENGINE=INNODB; Handler데이터 읽기 + 쓰기쿼리 실행기에서 호출됨STATUS: 핸들러 API 별 사용 정보SHOW GLOBAL STATUS LIKE 'Handler%'; 스레딩 구조스레드 기반으로 동작 (Foreground or Backgr..

Database/Mysql 2023.11.23

[Real MySQL] 3. 사용자 및 권한

"Real MySQL" 책을 정리한 포스팅 입니다. 1. 사용자 식별 'svc'@'127.0.0.1' 'svc'@'%' 홀따옴표로 감싸 식별자 표시를 합니다. 사용자의 접속지점도 계정의 일부가 됩니다. 아이디와 호스트를 함께 명시해야 합니다. 로그인 시에 계정의 접속지점이 호스트 정보와 불일치하다면 접속할 수 없습니다. 2. 사용자 계정 관리 시스템 계정과 일반 계정 SYSTEM_USER 권한을 가지고 있느냐에 따라 시스템 계정과 일반 계정으로 구분됩니다. 시스템 계정 데이터베이스 서버 관리자를 위한 계정 기능 계정관리 다른 세션 강제 종료 스토어트 프로그램 생성시 DEFINER를 타 사용자로 설정 일반 계정 개발자를 위한 계정 내장 계정 잠겨있는 계정입니다. SELECT user, host, accou..

Database/Mysql 2023.11.23

[Real MySQL] 2. 설치와 설정

"Real MySQL" 책을 정리한 포스팅 입니다. 1. MySQL 설치 2. MySQL 서버의 시작과 종료 실행 mysqld --defaults-file=/usr/local/etc/my.cnf --initialize-insecure --defaults-file mysql 서버를 기동하는데 사용되는 기본 옵션을 파일로 전달할 때 사용합니다. 보통의 상황에 공통적으로 쓰이는 옵션이 주로 사용됩니다. --initialize-insecure mysql 서버를 실행하는데 필요한 초기설정 관련 파일들을 자동 생성하는 옵션입니다. 초기 데이터 파일 로그파일 root 계정 (비밀번호 없음) 설정 my.cnf 기본 옵션이 작성된 설정 파일입니다. 서버에서 경로들을 확인하여 순서대로 해당 파일을 찾습니다. /etc/my..

Database/Mysql 2023.11.22

[Real MySQL] 1. 소개

"Real MySQL" 책을 정리한 포스팅 입니다. 1. 소개 Oracle 사에 인수된 오픈소스 RDBMS 입니다. 2. Edition Community Edition 오픈 소스 라이선스를 사용합니다. 별도의 라이선스 계약 없이 사용자가 사용할 수 있습니다. Enterprise Edition 상업적으로 사용하는 버전입니다. Commercial License를 사용합니다. MySQL 운영팀에게 공식적으로 기술 이슈에 대해 지원받을 수 있습니다. 고급 기능을 제공합니다. 고급 기능 보안 모니터링 백업 3. License MySQL은 에디션에 따라 각각의 라이선스를 가지고 있습니다. GPL (GNU General Public License) 오픈 라이선스 입니다. 수정하여 배포할 경우, 해당 제품은 GPL 라..

Database/Mysql 2023.11.22