7.1. 최적화 개요
7.1.1. MySQL 디자인 상의 제약 사항 and 트레이드오프 (Tradeoff)
7.1.2. 어플리케이션이 이식성 (Portability)을 갖도록 만들기
7.1.3. MySQL 벤치마크 슈트
7.1.4. 여러분 자신의 벤치마크 사용하기
7.2. SELECT and 다른 명령문 최적화 하기
7.2.1. EXPLAIN을 사용해서 쿼리 최적화 하기
7.2.2. 쿼리 성능 추정하기
7.2.3. SELECT 쿼리의 속도
7.2.4. WHERE 구문 최적화 하기
7.2.5. 범위 최적화 하기
7.2.6. 인덱스 병합 최적화 하기
7.2.7. IS NULL 최적화 하기
7.2.8. LEFT JOIN 및 RIGHT JOIN 최적화 하기
7.2.9. 네스티드 조인 최적화 하기
7.2.10. 외부 (outer) 조인 단순화
7.2.11. ORDER BY 최적화 하기
7.2.12. GROUP BY 최적화 하기
7.2.13. DISTINCT 최적화 하기
7.2.14. IN/=ANY 서브 쿼리 최적화 하기
7.2.15. LIMIT 최적화 하기
7.2.16. 테이블 스캔을 피하는 방법
7.2.17. INSERT 명령문의 속도
7.2.18. UPDATE 명령문의 속도
7.2.19. DELETE 명령문의 속도
7.2.20. 기타 최적화 팁 (Tips)
7.3. 잠금 이슈
7.3.1. 내부 잠금 방법
7.3.2. 테이블 잠금 이슈
7.3.3. 동시 삽입
7.3.4. 외부 잠금
7.4. 데이터베이스 구조 최적화 하기
7.4.1. 디자인 선택
7.4.2. 가능한 한 데이터는 작게 만든다
7.4.3. 컬럼 인덱스
7.4.4. 다중-컬럼 인덱스
7.4.5. MySQL의 인덱스 사용 방법
7.4.6. MyISAM 키 캐시
7.4.7. MyISAM 인덱스 통계 값 콜렉션
7.4.8. MySQL의 테이블 열기 및 닫기 방법
7.4.9. 동일 데이터베이스에서 많은 수의 테이블을 생성하기 위한 드로우 백 (Drawbacks)
7.5. MySQL 서버 최적화 하기
7.5.1. 시스템 요소 및 스타트 업 파라미터 튜닝
7.5.2. 서버 파라미터 튜닝하기
7.5.3. 쿼리 옵티마이저 성능 제어하기
7.5.4. MySQL 쿼리 캐시
7.5.5. 쓰레드 정보 조사하기
7.5.6. 컴파일 및 링크 방법에 따른 MySQL 성능
7.5.7. MySQL의 메모리 사용 방식
7.5.8. MySQL의 내부 임시 테이블 사용 방식
7.5.9. MySQL의 DNS 사용 방식
7.6. 디스크 이슈
7.6.1. 심볼릭 링크 사용하기
최적화 작업은 시스템을 전체적으로 이해해야 하기 때문에 매우 복잡한 일이 된다. 부분적인 로컬 최적화의 경우에는 어플리케이션 또는 시스템에 대해서 약간의 지식만 필요하겠지만, 시스템을 보다 완벽하게 최적화 시키고자 하는 경우에는 보다 많은 부분에 대한 지식이 필요하게 된다.