[고성능 웹 애플리케이션 제작을 위한]
MariaDB 성능 분석과 최적화
- 원서명MariaDB High Performance (ISBN 9781783981601)
- 지은이피에르 마브로(Pierre MAVRO)
- 옮긴이김성일
- ISBN : 9788960777347
- 30,000원
- 2015년 07월 20일 펴냄 (절판)
- 페이퍼백 | 336쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 웹 프로페셔널
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
요약
이 책에서는 MariaDB를 사용하기에 최적의 구성을 소개하고 성능 분석과 최적화에 관해 설명한다. 또한, 복제를 통해 실제상황에서 벌어질 수 있는 일에 잘 대처할 수 있게 한다. 마지막으로 모니터링과 백업의 다양한 방법을 소개하고 독자의 요구사항에 맞도록 최고의 방법을 선택할 수 있게 도와준다.
이 책에서 다루는 내용
전통적인 마스터/슬레이브 복제 구축 방법과 WAN에서도 쉽게 확장하는 방법
로드 밸런서와 클러스터 소프트웨어로 이중 마스터 복제를 만드는 방법
스파이더 엔진을 이용한 데이터 샤딩
갈레라 클러스터(Galera Cluster)를 이용한 쓰기 인프라스트럭처 향상
복잡한 구성을 만들기 위한 갈레라 클러스터 생성과 동시 복제
엔진 최적화와 병목현상 찾기
갈레라와 MySQL 클러스터 비교
툴을 이용한 데이터 그래프화
갈레라 재난 복구 솔루션 구성
이 책의 대상 독자
이 책은 대규모 트래픽을 지원하기 위해 현재 인프라스트럭처를 개선하는 방법을 배우려는 시스템 관리자/설계자나 DBA를 위한 책이다. 이 책을 학습하기 전에 MySQL/MariaDB의 일반적인 사용법에 익숙한 독자이기를 바란다. 만약 리눅스를 사용해 MariaDB를 위한 대형 인프라스트럭처를 배우고 만드는 데 문제가 없다면 아주 빠르게 학습할 수 있을 것이다.
이 책의 구성
1장, '성능 소개'에서는 여러분의 니즈에 해당하는 최적의 솔루션을 선택할 수 있도록 일반적인 하드웨어를 설명한다. 추가로 시스템 최적화를 소개하고 MySQL에서 MariaDB로 이전하는 방법을 설명한다.
2장, '성능 분석'에서는 성능 문제를 찾기 위한 툴을 소개하고 기본적인 모범 실무를 보여준다.
3장, '성능 최적화'에서는 병목현상을 찾는 법과 캐시 튜닝에 대해서 얘기하고 추가로 일부 엔진에 관해 설명한다.
4장, 'MariaDB 복제'에서는 MariaDB 복제를 구성하는 방법, HAProxy로 확장하는 법, 복제의 이점을 설명한다.
5장, 'WAN 슬레이브 구조'에서는 WAN 복제에서 일어날 수 있는 문제를 이해하고 해결할 수 있도록 도와준다.
6장, '이중 마스터 복제 생성'에서는 이중 마스터 복제 구조의 이점과 DRBD, 페이스메이커, PRM 등을 사용해 구성하는 방법을 설명한다.
7장, 'MariaDB 다중 마스터 슬레이브'에서는 MariaDB 10의 복제 기능을 사용하는 이점을 설명한다.
8장, '갈레라 클러스터: 다중 마스터 복제'에서는 갈레라 클러스터의 이점과 구성 방법을 설명한다.
9장, '스파이더: 데이터 샤딩'에서는 데이터를 샤딩하면서 더 나은 성능을 얻는 방법을 설명한다.
10장, '모니터링'에서는 싱글 인스턴스, 복제, 갈레라 클러스터에서 어떤 요소가 모니터링 하기에 중요한지를 설명한다.
11장, '백업'에서는 백업하는 여러 방법을 소개하고 여러분의 니즈에 맞도록 최고의 방법을 선택할 수 있게 도와준다.
목차
목차
- 1장. 퍼포먼스 소개
- MariaDB 역사
- 적당한 하드웨어 선택
- 디스크
- SATA 자기 드라이브
- SAS 자기 드라이브
- 하이브리드 드라이브
- SSD
- 레이드와 가속 카드
- 레이드 카드와 레벨
- 퓨전아이오 다이렉트 가속 카드
- 디스크 배열
- 램
- CPU
- 디스크
- 설계 종류와 성능
- 바이오스 전력 관리 최적화
- C-State
- P-State
- 제조사에 따른 옵션 이름
- 전력 관리 최적화
- cpufreq
- cpuidle
- 디스크와 파일시스템 최적화
- 커널 디스크의 I/O 스케줄러
- 파티션 정렬
- SSD 최적화
- 파일시스템 옵션
- 스왑
- cgroups으로 장치 지정하기
- 직접 적용
- cgconfig 데몬을 이용한 자동설정 방법
- NUMA를 이용한 하드웨어 최적화
- MySQL에서 MariaDB로 이전
- MariaDB 엔진 소개
- 요약
- 2장. 성능 분석
- 슬로우 쿼리
- 익스플레인 명령
- 슬로우 쿼리 로그
- 쇼 익스플레인 명령
- 프로파일링
- 퍼포먼스 스키마
- 사용자 상태정보
- 시스벤치
- 페르코나 툴킷
- pt-query-digest
- pt-stalk
- pt-summary
- pt-mysql-summary
- pt-duplicate-key-checker
- pt-index-usage
- Process list의 진화
- mytop
- innotop
- mysqlsla
- 요약
- 3장. 성능 최적화
- 상태정보 재설정
- 글로벌 상태정보
- DNS 연결
- DNS 캐시 서버
- 최대 연결
- 빈로그 캐시
- 트랜잭션 캐시를 위한 빈로그
- 비트랜잭션을 위한 빈로그
- 임시 테이블
- 오픈 테이블
- 쿼리 캐시
- 쿼리 캐시의 이해
- 쿼리 캐시 수정
- 저장 엔진 최적화
- 데이터베이스 요약
- InnoDB/XtraDB
- 풀 크기와 상태정보
- 리두 로그
- 트랜잭션 커밋과 로그
- 버퍼 풀 인스턴스
- 플러시 메소드
- TokuDB
- 설치
- 플러시 메소드
- 캐시 크기
- 트랜잭션 커밋과 로그
- 임시 디렉터리
- 압축
- MyISAM
- 키 버퍼
- 인덱스
- 엔진
- 종류
- mysqltuner
- 요약
- 4장. MariaDB 복제
- 복제의 동작 방식
- 마스터 노드 설정
- 마스터 노드 준비
- 슬레이브 노드 설정
- 슬레이브 생성
- mysqldump
- Xtrabackup
- 슬레이브 상태 확인
- GTID 복제
- GTID란 무엇인가
- 마스터 노드 설정
- 마스터 노드 준비
- GTID 슬레이브 노드 설정
- 슬레이브 생성
- 슬레이브 시작
- 슬레이브 상태 확인
- 전통적인 복제에서 GTID 복제로 이전
- 병렬 복제
- 읽기 트랜잭션의 로드 밸런싱
- HAProxy 설치
- HAProxy 설정
- 상태 확인
- 설정 테스트
- 예제상황과 문제 해결
- SQL 에러
- 빈로그 분석
- GTID: 슬레이브를 마스터로 교체하고 복구하기
- 요약
- 5장. WAN 슬레이브 구조
- 캐스케이드 슬레이브
- 중간 슬레이브를 위한 복제 성능 향상
- 복제의 제한
- 여러 대륙에 걸친 슬레이브 설계
- SSL 복제
- 인증서 생성
- 자신만의 CA 만들기
- 서버 증명서 생성
- 클라이언트 증명서 생성
- Checking your certificates
- Configuring MariaDB for SSL
- Master SSL
- Client SSL
- 인증서 생성
- Compression options
- 요약
- 6장. 이중 마스터 복제 생성
- 이중 마스터 복제와 위험요소
- 이중 마스터 설치와 설정
- 자동 관리
- 하프록시
- 유지보수 모드에 관한 학습
- Keepalived
- 페이스메이커 또는 페르코나 복제 매니저
- DRBD
- 하프록시
- 이중 마스터 복제를 수리하는 방법
- 요약
- 7장. MariaDB 다중 마스터 슬레이브
- 다중 마스터 슬레이브 복제
- 다중 소스 복제 설치
- 그밖의 옵션
- 요약
- 8장. 갈레라 클러스터: 다중 마스터 복제
- 갈레라 클러스터 동작 원리
- 갈레라 클러스터의 제한사항
- 설치와 설정의 기본사항
- 설치
- 설정 파일
- MariaDB 설정
- 갈레라 설정
- 첫 번째 부팅
- 사용 방법과 그 이해
- 전송 방법
- mysqldump 사용
- Xtrabackup 사용
- rsync 사용
- 도너 노드로 만들기
- 완전한 정전 후 시작하기
- 컨센서스 클러스터링과 유지보수
- Garb: 쿼럼 방식
- 성능 튜닝
- 병렬 슬레이브 스레드
- Gcache 크기
- 전송 방법
- 이중 설계 만들기
- 읽기와 쓰기 노드
- 로드 밸런스된 설계
- WAN 복제
- 재난복구
- 테스트 및 이슈
- 복제의 일시 정지
- 갈레라 고장 내기
- 스플릿 브레인
- 요약
- 9장. 스파이더: 데이터 샤딩
- 스파이더 설정
- 첫 번째 샤드 생성
- 샤딩 복제
- 복제된 샤드 생성
- 스파이더 HA 모니터링
- 서버 오류 후 데이터 복구
- 성능 튜닝
- 스파이더 파라미터
- bgs 모드
- 연결 재활용 모드
- 상태정보 테이블
- 원격 SQL 로그
- 샤드의 개수
- 스파이더 파라미터
- 요약
- 10장. 모니터링
- 싱글 인스턴스
- 복제
- 갈레라 클러스터
- 그밖의 모니터링 솔루션
- 그래프
- 로그
- 요약
- 11장. 백업
- mysqldump
- 압축
- mysqlhotcopy
- LVM
- 스냅샷
- 스냅샷 삭제
- 롤백
- 백업
- 스냅샷
- Xtrabackup
- 풀 백업
- 증분 백업
- 풀 백업으로부터의 복구
- 증분 백업으로부터의 복구
- 갈레라 백업
- 요약