본문 바로가기

추천 검색어

실시간 인기 검색어

대용량 시스템 구축을 위한 MYSQL 성능 최적화

위키북스 오픈소스 웹 시리즈 25
위키북스 · 2010년 11월 19일
0.0 (0개의 리뷰)
평가된 감성태그가
없습니다
  • MYSQL 성능 최적화 대표 이미지
    MYSQL 성능 최적화 대표 이미지
  • A4
    사이즈 비교
    210x297
    MYSQL 성능 최적화 사이즈 비교 188x245
    단위 : mm
MD의 선택 무료배송 이벤트 소득공제
10% 37,800 42,000
적립/혜택
2,100P

기본적립

5% 적립 2,100P

추가적립

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 2,100P
  • 리뷰 작성 시, e교환권 추가 최대 300원
절판되었습니다.

해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

패키지

북카드

키워드 Pick

키워드 Pick 안내

관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

책 소개

이 책이 속한 분야

MYSQL로 빠르고 안정적인 시스템을 구축한다!
『MYSQL 성능 최적화』는 MySQL로 빠르고 안정적인 시스템을 구축하는 방법을 알려준다. MySQL의 성능 문제를 상세히 다루며 견고성, 보안, 데이터 무결성에 초점을 맞춘 이 책은, 대규모 시스템을 실제로 구축한 경험을 다년간 축적한 저명한 전문가가 썼다. 키마, 인덱스, 쿼리, 그 밖의 고급 기능을 잘 설계하여 성능을 최대로 끌어내는 방법을 배우고, MySQL, 운영체제, 하드웨어를 튜닝하여 시스템의 잠재능력을 최대한 활용하는 데 필요한 세부지침도 얻을 수 있다.
이 책은 앞선 기법을 심도 깊게 다뤄 독자가 MySQL의 능력을 십분 활용하도록 돕는다. MySQL 서버를 조금 만지작거리다 이제 막 진짜 응용프로그램을 처음 만들어볼 준비가 된 초보자, 그리고 잘 튜닝된 MySQL 기반의 응용프로그램을 이미 보유했으나 조금 더 성능을 끌어내고 싶어하는 숙련된 사용자 모두에게 알맞다고 한다.

작가정보

저자(글) 배론 슈와츠

저자 배론 슈와츠(Baron Schwartz)는 미국 버지니아 주의 샬롯츠빌에 사는 소프트웨어 엔지니어로 인터넷에서 “Xaprb”라는 별명으로 통한다(QWERTY를 드보락 키보드에서 친 단어다). 배론은 프로그래밍 문제 해결에 골머리를 앓고 있는 중이 아니라면 아내 린과 애완견 카본과 시간을 보내곤 한다. 소프트웨어 엔지니어링에 관한 블로그를 운영한다.

저자 피터 제이트세브(Peter Zaitsev)는 MySQL AB 고성능 그룹의 전직 관리자로 현재는 웹사이트를 운영한다. 하루에 수백만의 방문객을 처리하고, 수백 대의 서버를 사용하고, 수 테라바이트의 데이터를 처리하는 대형 웹사이트에 대한 전문가다. 하드웨어와 소프트웨어(쿼리 최적화 등)를 모두 변경하고 업그레이드해 문제를 해결하곤 한다. 여러 컨퍼런스에서 종종 연설도 한다.

저자(글) 바딤 카첸코

저자 바딤 카첸코(Vadim Tkachenko)는 MySQL 성능 컨설팅 전문 회사 페르코나(Percona Inc.)의 공동 설립자이며 MySQL AB의 전직 성능 엔지니어다. 다중 스레드 프로그래밍과 동기화의 전문가로서 그의 주 업무는 벤치마크, 프로파일링, 병목 현상 찾기 등이었다. 성능 모니터링 및 튜닝을 위한 기능과 다중 CPU에서 MySQL을 확장하는 기능에 관한 업무를 하기도 했다.

저자 제레미 자워드니(Jeremy D. Zawodny)는 미국 오하이오 주 북서쪽에서 두 고양이와 살다가 야후!에서 일하기 위해 실리콘 밸리로 1999년 후반에 이사해 닷컴 붕괴를 두 눈으로 목격했다. 8년 반을 야후!에서 일하며 MySQL과 그 밖의 여러 오픈소스 기술을 다양하게 적용했다. 제레미는 캘리포니아 주의 샌프란시스코 베이 부근에 그의 부인과 고양이 네 마리와 함께 살고 있다.

저자(글) 아르옌 렌츠

저자 아르옌 렌츠(Arjen Lentz)는 암스테르담에서 태어났으나 2000년 이후부터는 호주의 퀸즈랜드에서 지내며 아름다운 딸 피비와 검은 고양이 피가로와 함께 산다. 원래 C 프로그래머였던 아르옌은 MySQL AB의 25번째 직원이었다(2001-2007). 2007년 잠시의 휴식기 이후 오픈 쿼리(http://openquery.com.au)를 설립했으며, 이 회사는 아시아 태평양 지역에서 데이터 관리 트레이닝과 컨설팅 서비스를 개발하고 제공한다. 컨퍼런스와 사용자 그룹을 상대로 정기적인 연설을 한다. 여가 시간에는 요리, 정원 가꾸기, 독서, 캠핑, 렙랩(RepRap) 프로젝트 탐구하기 등을 즐긴다.

역자 이성욱은 컴퓨터 과학을 전공하고, 금융권의 CRM / DW 프로젝트의 리더로 참여했으며, 2년여간 DW를 위한 ETL 도구 개발도 추진했다. NHN의 DBA로 근무하고 있으며, 데이터 모델링 및 표준화에 참여하고, DBMS 자원 관리 및 보안을 위한 관리 시스템에도 많은 관심을 가지고 있다. 현재는 일본에 파견되어 네이버 재팬의 DB 관리 및 관련 기술 지원을 담당하고 있다.

역자 한정민은 정보시스템과 HCI, 그리고 커뮤니케이션 디자인을 공부했다. 여행을 좋아해 샌프란시스코, 하와이, 팔라우에서 웹 UI/UX 기획과 개발 일을 했다. 웹과 소셜, UI/UX, 사용성, 모바일, 디자인 등에 관심이 많다. 삼성전자 모바일/웹 서비스 전략기획 컨설팅을 했으며 현재 SK C&C m-commerce 사업본부의 웹 마케팅 일을 하고 있다. 번역 서적으로는 ‘헬로, 안드로이드’, ‘IT 개발자가 쓴 인간관리 이야기’, ‘웹 표준’과 공역 서적 ‘웹 접근성’ 등이 있다.

역자 최재훈은 비자발적 독신. 소개팅 환영. 때로는 번역가. 어떤 때는 칼럼리스트. 주로 직장인. 초보 베이시스트. ‘지속적인 통합’, ‘Ship It!’ 같은 빌드 관련 서적을 번역하여 이 분야 전문가로 아는 사람이 많으나 실상은 온라인 게임 서버를 주로 다루며 분산 시스템에 관심이 많다. 데이터베이스 관리자를 목표로 한창 공부하던 때가 있어 High Performance MySQL 번역에 참가하게 됐다.

목차

  • 1장 MySQL 아키텍처

    MySQL의 논리적 아키텍처
    - 연결 관리와 보안
    - 최적화와 실행
    동시성 제어
    - 읽기/쓰기 잠금
    - 잠금 세분성
    트랜잭션
    - 격리 수준
    - 데드락
    - 트랜잭션 로깅
    - MySQL의 트랜잭션
    MVCC(다중 버전 동시성 제어)
    MySQL의 스토리지 엔진
    - MyISAM 엔진
    - MyISAM 병합 엔진
    - InnoDB 엔진
    - Memory 엔진
    - Archive 엔진
    - CSV 엔진
    - Federated 엔진
    - Blackhole 엔진
    - NDB 클러스터 엔진
    - Falcon 엔진
    - SolidDB 엔진
    - PBXT(Primebase XT) 엔진
    - Maria 엔진
    - 그 밖의 스토리지 엔진
    - 적합한 엔진 선택하기
    - 고려 사항
    - 실용 예제
    - 스토리지 엔진 요약
    - 테이블 변환

    2장 병목지점 찾기: 벤치마킹과 프로파일링

    왜 벤치마크하는가?
    벤치마킹 전략들
    - 무엇을 측정할 것인가
    벤치마킹 전술
    - 벤치마크를 설계하고 계획하기
    - 정확한 결과 얻기
    - 벤치마크를 실행하고 결과를 분석하기
    벤치마크 도구
    - 풀-스택 도구
    - 단일 컴포넌트 도구
    벤치마크 사례들
    - http_load
    - sysbench
    - 데이터베이스 테스트 스위트의 dbt2 TPC-C
    - MySQL 벤치마크 스위트
    프로파일링
    - 응용프로그램 프로파일링하기
    - MySQL 프로파일링
    - MySQL 서버 프로파일링하기
    - SHOW STATUS 로 쿼리 프로파일하기
    - SHOW PROFILE
    - MySQL을 프로파일하는 다른 방법
    - 프로파일링 코드를 넣지 못할 때
    운영체제 프로파일링
    - MySQL 연결 및 프로세스의 문제 해결하기
    - 고급 프로파일링 및 문제 해결

    3장. 스키마 최적화와 인덱싱

    최적의 데이터 타입 고르기
    - 정수 타입
    - 실수 타입
    - 문자열 타입
    - 날짜 및 시간 타입
    - 비트(Bit)로 구성된 데이터 타입
    - 식별자 고르기
    - 특별한 데이터 타입
    인덱싱 기초
    - 인덱스의 종류
    고성능을 위한 인덱싱 전략
    - 칼럼을 격리시키기
    - 프리픽스 인덱스와 인덱스 선택도
    - 클러스터링 인덱스
    - 커버링 인덱스
    - 정렬을 위한 인덱스 스캔의 사용
    - 압축(프리픽스 압축) 인덱스
    - 중첩 또는 중복된 인덱스
    - 인덱스와 잠금
    인덱싱 사례 연구
    - 여러 종류의 필터링 지원하기
    - 다수의 범위 조건 피하기
    - 정렬 최적화하기
    인덱스 및 테이블 유지보수
    - 테이블 손상을 발견하고 고치기
    - 인덱스 통계정보 갱신하기
    - 인덱스 및 데이터 단편화 줄이기
    정규화와 비정규화
    - 정규화된 스키마에 대한 찬반론
    - 비정규화된 스키마에 대한 찬반론
    - 정규화와 비정규화의 혼합
    - 캐시 및 집계 테이블
    ALTER TABLE의 속도를 향상시키기
    - .frm 파일만 수정하기
    - MyISAM 인덱스를 신속하게 구축하기
    스토리지 엔진에 대하여
    - MyISAM 스토리지 엔진
    - Memory 스토리지 엔진
    - InnoDB 스토리지 엔진

    4장 쿼리 성능 최적화

    슬로우 쿼리: 데이터 접근을 최적화하기
    - 데이터베이스에 필요 이상의 데이터를 요구하고 있는가?
    - MySQL이 너무 많은 데이터를 조사하는가?
    쿼리를 재구성하는 방법들
    - 복잡한 쿼리 vs 여러 개의 쿼리
    - 쿼리 자르기
    - 조인 분해
    쿼리 실행의 기초
    - MySQL 클라이언트/서버 프로토콜
    - 쿼리 캐시
    - 쿼리 최적화 단계
    - 쿼리 실행 엔진
    - 결과를 클라이언트로 돌려주기
    MySQL 쿼리 옵티마이저의 제한 사항
    상관 서브쿼리
    특정 형식의 쿼리 최적화하기
    - COUNT() 쿼리 최적화하기
    - 조인 쿼리 최적화하기
    - 서브쿼리 최적화하기
    - GROUP BY와 DISTINCT 최적화하기
    - LIMIT와 OFFSET 최적화하기
    - SQL_CALC_FOUND_ROWS 최적화하기
    - UNION 최적화 하기
    쿼리 최적화 힌트
    사용자 정의 변수
    - MySQL 업그레이드에 주의하기

    5장 고급 MySQL 기능

    MySQL의 쿼리 캐시
    - MySQL이 캐시 적중을 검사하는 방법
    - 캐시가 메모리를 쓰는 법
    - 쿼리 캐시가 도움이 될 때
    - 쿼리 캐시를 튜닝하고 유지보수하는 법
    - InnoDB와 쿼리 캐시
    - 일반적인 쿼리 캐시 최적화
    - 쿼리 캐시의 대안
    MySQL 안에 코드를 저장하기
    - 스토어드 펑션과 프로시저
    - 트리거
    - 이벤트
    - 스토어드 코드 안의 주석 보존하기
    커서
    프리페어 스테이트먼트
    - 프리페어 스테이트먼트 최적화
    - 프리페어 스테이트먼트 용 SQL 인터페이스
    - 프리페어 스테이트먼트의 제한 사항
    사용자 정의 함수

    - 업데이트 가능한 뷰
    - 뷰의 성능
    - 뷰의 한계
    문자 셋과 콜레이션
    - MySQL이 문자 셋을 사용하는 방법
    - 문자 셋과 콜레이션 고르기
    - 문자 셋과 콜?이션은 쿼리에 어떻게 영향을 미치는가
    전문 검색
    - 자연어 검색
    - 불리언 검색
    - MySQL 5.1 이상에서의 전문 검색의 변화
    - 전문 검색의 득과실 그리고 해결책
    - 전문 검색 튜닝과 최적화
    외래 키 제약조건
    머지 테이블과 파티션 테이블
    - 머지 테이블
    - 파티션 테이블
    분산(XA) 트랙잭션
    - 내부 XA 트랜잭션
    - 외부 XA 트랜잭션

    6장 서버 설정 최적화

    기본 설정 방법
    - 문법과 변수의 범위 그리고 동적 재설정
    - 변수 설정의 부작용
    - 시작하기
    일반적인 튜닝
    - 메모리 사용 튜닝하기
    - MyISAM 키 캐시
    - InnoDB 버퍼 풀
    - 스레드 캐시
    - 테이블 캐시
    - InnoDB 데이터 사전
    MySQL의 I/O 조작 튜닝하기
    - MyISAM I/O 튜닝
    - InnoDB I/O 튜닝
    MySQL 동시성 튜닝하기
    - MyISAM 동시성 튜닝
    - InnoDB 동시성 튜닝
    작업량에 기초한 튜닝
    - BLOB와 TEXT 작업 최적화하기
    - 파일 정렬 최적화
    - MySQL 서버 상태 변수 검사하기
    커넥션별 설정 튜닝하기

    7장 운영체제와 하드웨어 최적화

    무엇이 MySQL의 성능을 제한하는가?
    MySQL 용 CPU 선택 방법
    - CPU가 빠른 것이 좋은가 많은 것이 좋은가?
    - CPU 아키텍처
    - 다중 CPU와 코어로 확장하기
    메모리와 디스크 자원 균형맞추기
    - 랜덤 대 순차 I/O
    - 캐싱, 읽기, 쓰기
    - 작업 집합(Working Set)이란?
    - 효과적인 메모리 대 디스크 비율 찾기
    - 하드 디스크 선택하기
    슬레이브용 하드웨어 선택하기
    RAID 성능 최적화
    - RAID 실패, 복구, 모니터링
    - 하드웨어 RAID와 소프트웨어 RAID 균형 맞추기
    - RAID 구성과 캐싱
    SAN와 NAS
    - SAN
    - NAS
    다중 디스크 볼륨 사용하기
    네트워크 구성
    운영체제 선택하기
    파일시스템 선택하기
    스레딩
    스와핑
    운영 체제 상태
    - vmstat 출력 읽는 방법
    - iostat 출력 읽는 방법
    - CPU 바운드 상태의 장비
    - I/O 바운드 상태의 장비
    - 스와핑이 많은 장비
    - 대기(Idle) 상태의 장비

    8장 복제

    복제 개요
    - 복제를 통한 문제 해결
    - 복제 작동 방법
    복제 구성하기
    - 복제 계정 만들기
    - 마스터와 슬레이브 구성하기
    - 슬레이브 시작하기
    - 다른 서버에서 슬레이브 초기화하기
    - 권장되는 복제 구성
    복제 살펴보기
    - 구문-기반 복제
    - 레코드 기반 복제
    - 복제 파일
    - 복제 이벤트를 다른 슬레이브에 보내기
    - 복제 필터
    복제 형태
    - 마스터와 여러 슬레이브
    - 액티브-액티브 모드의 마스터-마스터
    - 액티브-패시브 모드의 마스터-마스터
    - 슬레이브가 있는 마스터-마스터
    - 링
    - 마스터, 분배 마스터, 슬레이브
    - 트리 또는 피라미드
    - 사용자 정의 복제 솔루션
    복제와 용량 계획
    - 복제가 쓰기 확장에 도움이 되지 못하는 이유
    - 사용률 억제 계획
    복제 관리와 유지
    - 복제 감시하기
    - 슬레이브 지연 측정하기
    - 슬레이브와 마스터의 데이터 일관성 판단하기
    - 슬레이브를 마스터에 재동기화하기
    - 마스터 변경하기
    - 마스터-마스터 구성에서 역할 전환하기
    복제 문제와 해결책
    - 데이터 손상이나 손실로 인한 오류
    - 비 트랜잭션용 테이블 사용하기
    - 트랜잭션용과 비 트랜잭션용 테이블 혼합하기
    - 비 확정적 구문
    - 마스터와 슬레이브의 다른 스토리지 엔진
    - 슬레이브의 데이터 변경
    - 유일하지 않은 서버 ID
    - 정의되지 않은 서버 ID
    - 복제되지 않은 데이터에 대한 의존성
    - 누락된 임시 테이블
    - 업데이트 중 일부를 복제하지 않는 것
    - InnoDB 잠금 선택으로 인한 잠금 충돌
    - 마스터-마스터 복제에서 두 마스터에 모두 쓰기
    - 지나친 복제 지연 시간
    - 마스터의 대형 패킷
    - 제한된 복제 대역폭
    - 디스크 공간 없음
    - 복제의 한계점
    복제는 얼마나 빠른가?
    MySQL 복제의 미래

    9장 성능확장 및 고가용성

    용어
    MySQL 확장하기
    - 확장성을 위한 계획 세우기
    - 확장 이전에 시간 벌기
    - 수직 확장하기
    - 수평 확장하기
    - 스케일 백
    - 클러스터링으로 확장하기
    부하 분산
    - 직접 연결하기
    - 중개인 도입하기
    - 마스터와 여러 슬레이브로 부하 분산하기
    고가용성
    - 고가용성 설계
    - 중복성 추가하기
    - 장애 조치와 장애 복구

    10장 응용프로그램 수준의 최적화

    응용프로그램 성능 개요
    - 문제의 요인 찾기
    - 일반적인 문제 찾기
    웹 서버 문제
    - 최적의 동시성 알아내기
    캐싱
    - 응용프로그램보다 하위 수준에서 캐시하기
    - 응용프로그램 수준의 캐싱
    - 캐시 조절 규칙
    - 캐시 객체 계층 구조
    - 컨텐츠 미리 생성하기
    MySQL 확장하기
    MySQL의 대안

    11장 백업과 복구

    개요
    - 용어
    - 모든 것이 복구를 위한 것이다
    - 다루지 않는 주제
    - 개념 잡기
    - 왜 백업을 하는가?
    고려 사항과 보완 해야할 점
    - 손실을 얼마나 감당할 수 있는가?
    - 온라인 백업 아니면 오프라인 백업?
    - 논리적 아니면 물리적 백업?
    - 무엇을 백업 하는가
    - 스토리지 엔진과 일관성
    - 복제
    바이너리 로그 관리와 백업
    - 바이너리 로그 형식
    - 오래된 바이너리 로그 안전하게 삭제하기
    데이터 백업하기
    - 논리 백업 만들기
    - 파일시스템 스냅샷
    백업에서 복구하기
    - MySQL로의 접근 제한하기
    - 물리적 파일 복원하기
    - 논리 백업 복원하기
    - PIT(Point-in-Time) 복구
    - 고급 복구 기법
    - InnoDB 복구
    백업과 복구 속도
    백업 도구
    - mysqldump
    - mysqlhotcopy
    - InnoDB 핫 백업
    - mk-parallel-dump
    - mylvmbackup
    - Zmanda 복구 관리자
    - R1Soft
    - MySQL 온라인 백업
    - 백업 도구 비교
    백업 스크립트 작성하기

    12장 보안

    용어
    계정의 기본
    - 권한
    - 권한 테이블
    - MySQL의 권한 확인 방법
    - 권한의 조회 및 추가, 제거
    - MySQL 권한 설정하기
    - MySQL 4.1에서 변경된 권한 처리 방식
    - MySQL 5.0에서 변경된 권한 처리 방식
    - 권한과 성능
    - 일반적인 문제와 해결책
    운영체제 보안
    - 지침
    네트워크 보안
    - 로컬 호스트 전용 연결
    - 방화벽
    - DMZ 안의 MySQL
    - 연결 암호화와 터널링
    - TCP 래퍼
    - 자동 호스트 차단
    데이터 암호화
    - 비밀번호 해싱
    - 암호화된 파일시스템
    - 응용프로그램 수준의 암호화
    - 소스 코드 수정
    chroot 환경에서의 MySQL

    13장 MySQL 서버상태

    시스템 변수
    SHOW STATUS
    - 스레드와 연결 통계
    - 바이너리 로깅 상태
    - 명령 카운터
    - 임시 파일과 테이블
    - 핸들러 작업
    - MyISAM 키 버퍼
    - 파일 기술자
    - 쿼리 캐시
    - SELECT 타입
    - 정렬
    - 테이블 잠금
    - SSL(Secure Socket Layer)
    - InnoDB 전용
    - 플러그인 전용
    - 기타
    SHOW INNODB STATUS
    - 헤더 정보
    - 세마포어
    - 외래키 오류
    - 검출된 데드락
    - 트랜잭션
    - 파일 입출력
    - 인서트 버퍼와 어댑티브 해시 인덱스
    - 로그
    - 버퍼 풀과 메모리
    - 레코드 조작
    SHOW PROCESSLIST
    SHOW MUTEX STATUS
    복제 상태
    INFORMATION_SCHEMA

    14장 고성능을 위한 도구들

    쿼리 실행 도구
    - MySQL의 GUI 도구들
    - SQLyog
    - phpMyAdmin
    모니터링 도구들
    - 비대화식 모니터링 시스템
    - 대화식 도구들
    분석 도구들
    - HackMySQL 도구들
    - Maatkit 분석 도구들
    MySQL 유틸리티들
    - MySQL 프록시
    - MySQL을 위한 Dormando의 Proxy
    - Maatkit 유틸리티들
    더 읽어볼 거리

    부록A 대용량 파일 전송

    파일 복사
    파일 복사에 대한 벤치마크

    부록B EXPLAIN 사용하기

    EXPLAIN 실행
    EXPLAIN에 나오는 칼럼들
    비쥬얼 EXPLAIN

    부록C MySQL과 함께 스핑크스 사용하기

    개요: 일반적인 용도의 스핑크스 검색
    왜 스핑크스를 사용할까?
    아키텍쳐
    특별한 기능들
    실제 구현 예제들
    결론

    부록D 락 디버깅

    서버 레벨에서 잠금 대기
    스토리지 엔진에서의 락 대기

책 속으로

『MySQL 성능 최적화』는 대규모 MySQL 서비스를 운영하는 관리자에게 맞는 책이다. DBA가 되고자 하는 SQL 프로그래머나 급격히 규모가 증가하는 서비스의 관리자에게도 적합한 책이다. 제목 그대로 시스템의 성능을 최적의 상태로 유지하는 방법을 다루기 때문이다.
웹 서비스를 포함해 상당수의 서비스가 병목지점인 데이터베이스 때문에 성능을 제대로 발휘하지 못하곤 한다. 더 빠른 하드웨어와 대역폭이 더 큰 망을 도입해 문제를 해결하기도 하지만 비용 문제를 간과할 순 없다. 게다가 국내 외의 유명 웹사이트에 몰리는 트래픽을 감안하면 좀 더 본질적인 해결책이 필요하다. 수년 전에 급격히 성장하던 모 온라인 서점은 웹 페이지가 너무 느리게 뜨는 바람에 사용자의 불만이 성장세만큼이나 가파르게 증가했다. 후일담을 들어보면 유명한 데이터베이스 컨설턴트의 도움을 얻어 수개월 만에 간신히 문제를 해결했다고 한다.
이 이야기는 여러분에게 최소한 두 가지 미래를 보여준다. 자신이 근무하는 회사의 서비스가 겪는 문제를 해결하여 일찌감치 고속 승진의 대열에 들어서는 기회가 있다. 아니면 이 책을 통해 앞서 말한 수준의 데이터베이스 컨설턴트가 되어 고액 소득자 대열에 합류하는 방법도 있다. 이 책만으로 충분하다는 건 아니지만 이 책에서 다룬 내용을 모르고는 그 대열에 자신의 이름을 올려놓기 힘들다는 건 분명하다.
여러분이 무엇을 원하건 아무쪼록 『MySQL 성능 최적화』에서 그 해답을 찾길 바란다. S.M.A.R.T하게 일하고 일찍 퇴근해 균형 있는 삶을 되찾는 데 이 책이 일조했으면 하는 바람이다.
- 역자 서문 중에서

출판사 서평

MySQL을 사용하는 모든 DBA와 개발자를 위한 최고의 솔루션 가이드!
트위터나 페이스북과 같은 최근의 서비스는 대용량의 실시간 데이터베이스 처리가 필수다. 데이터베이스 모델링과 최적의 운영 환경을 위한 DBMS 구성, 최적화된 쿼리는 이러한 서비스 품질에 가장 많은 영향을 미친다.
국내에 출간된 MySQL 서적이 거의 전무한 이 시점에 『MySQL 성능 최적화』는 이러한 지식과 경험을 생생하게 전달해줄 수 있는 유일한 서적이다.
이 책은 여러분이 알지 못하는 새로운 기술뿐만 아니라 여러분이 이미 가지고 있는 기술까지 다시 생각해보고 더 최적화할 수 있는 기회를 제공할 것이다. 여러분이 이 책을 선택했다면 적어도 두 번은 정독할 것을, 그리고 책꽂이에서 제일 좋은 자리에 꽂아 둘 것을 권한다.

『MySQL 성능 최적화』는 MySQL로 빠르고 안정적인 시스템을 구축하는 방법을 알려준다. 대규모 시스템을 실제로 구축한 경험을 다년간 축적한 저명한 전문가가 쓴 이 책은 MySQL의 성능 문제를 상세히 다루며 견고성, 보안, 데이터 무결성에 초점을 맞춘다.
『MySQL 성능 최적화』는 앞선 기법을 심도 깊게 다뤄 독자가 MySQL의 능력을 십분 활용하도록 돕는다. 여러분은 스키마, 인덱스, 쿼리, 그 밖의 고급 기능을 잘 설계하여 성능을 최대로 끌어내는 방법을 배운다. 이와 더불어 MySQL, 운영체제, 하드웨어를 튜닝하여 시스템의 잠재능력 최대한 활용하는 데 필요한 세부지침도 얻게 된다. 복제, 부하 분산, 고가용성, 장애조치를 활용해 응용프로그램의 성능을 끌어올릴 때 쓰는 실용적이고 안전한 기법들도 설명한다.
이 책에서 다루는 내용은 다음과 같다.
□ 성능과 안정성에 주된 초점을 둔다.
□ 스토리지 엔진을 철저히 해부한다. InnoDB 저장소 엔진을 튜닝하고 최적화하는 방법도 심층적으로 다룬다.
□ 스토어드 프로시저, 분할 데이터베이스, 트리거, 뷰 등 MySQL 5.1 및 5.1에서 새로 도입된 기능을 알아본다.
□ MySQL로 성능 확장성이 뛰어난 대규모 시스템을 구축하는 방법에 대해 상세히 논의한다.
□ 백업 및 복제에 도입된 새 옵션을 알아본다.
□ 전문 검색 등의 고급 쿼리 기능을 최적화하는 법을 알아본다.

이 책에서는 벤치마킹, 프로파일링, 백업, 보안, MySQL 관리, 측정 또는 감시하는 데 이용하는 도구와 기법도 다룬다.
MySQL 서버를 조금 만지작거리다 이제 막 진짜 응용프로그램을 처음 만들어볼 준비가 된 초보자, 그리고 잘 튜닝된 MySQL 기반의 응용프로그램을 이미 보유했으나 조금 더 성능을 끌어내고 싶어하는 숙련된 사용자 모두에게 이 책을 권한다.

기본정보

상품정보
ISBN 9788992939546
발행(출시)일자 2010년 11월 19일
쪽수 816쪽
크기
188 * 245 mm
총권수 1권
시리즈명
위키북스 오픈소스 웹 시리즈
원서명/저자명 Hign performance MySQL/Schwartz, Baron

Klover

Klover 리뷰 안내
교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1.리워드 안내
구매 후 90일 이내에 평점과 10자 이상의 리뷰 작성 시 e교환권 200원을 적립해 드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
한달 후 리뷰
구매 후 30일~ 120일 이내에 작성된 두 번째 구매리뷰에 대해 한 달 후 리뷰로 인지하고 e교환권 100원을 추가 제공합니다.

* 강연, 공연, 여행, 동영상, 사은품, 기프트카드 상품은 지급 제외
2.운영 원칙 안내
Klover 리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
3.신고하기
다른 고객이 작성리뷰에 대해 불쾌함을 느끼는 경우 신고를 할 수 있으며, 신고 자가 일정수준 이상 누적되면 작성하신 리뷰가 노출되지 않을 수 있습니다.

구매 후 리뷰 작성 시, e교환권 200원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여주는 교보문고의 새로운 서비스입니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 "좋아요“ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보 없이 삭제될 수 있습니다.
리워드 안내
구매 후 90일 이내에 문장수집 작성 시 e교환권 100원을 적립해드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.

구매 후 리뷰 작성 시, e교환권 100원 적립

이 책의 첫 기록을 남겨주세요

교환/반품/품절 안내

상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

이벤트
TOP

저자 모두보기

매장별 재고 및 도서위치

할인쿠폰 다운로드

  • 쿠폰은 주문결제화면에서 사용 가능합니다.
  • 다운로드한 쿠폰은 마이 > 나의 통장 에서 확인 가능합니다.
  • 도서정가제 적용 대상 상품에 대해서는 정가의 10%까지 쿠폰 할인이 가능합니다.
  • 도서정가제 적용 대상 상품에 10% 할인이 되었다면, 해당 상품에는 사용하실 수
    없습니다.

적립예정포인트 안내

  • 통합포인트 안내

    • 통합포인트는 교보문고(인터넷, 매장), 핫트랙스(인터넷, 매장), 모바일 교보문고 등 다양한 곳에서 사용하실 수 있습니다.
    • 상품 주문 시, 해당 상품의 적립률에 따라 적립 예정 포인트가 자동 합산되고 주문하신 상품이 발송완료 된 후에 자동으로 적립됩니다.
    • 단, 쿠폰 및 마일리지, 통합포인트, e교환권 사용 시 적립 예정 통합포인트가 변동될 수 있으며 주문취소나 반품시에는 적립된 통합포인트가 다시 차감됩니다.
  • 통합포인트 적립 안내

    • 통합포인트는 도서정가제 범위 내에서 적용됩니다.
    • 추가적립 및 회원 혜택은 도서정가제 대상상품(국내도서, eBook등)으로만 주문시는 해당되지 않습니다.
  • 기본적립) 상품별 적립금액

    • 온라인교보문고에서 상품 구매시 상품의 적립률에 따라 적립됩니다.
    • 단 도서정가제 적용 대상인 국내도서,eBook은 15%내에서 할인율을 제외한 금액내로 적립됩니다.
  • 추가적립) 5만원 이상 구매시 통합포인트 2천원 추가적립

    • 5만원 이상 구매시 통합포인트 2천원 적립됩니다.
    • 도서정가제 예외상품(외서,음반,DVD,잡지(일부),기프트) 2천원 이상 포함시 적립 가능합니다.
    • 주문하신 상품이 전체 품절인 경우 적립되지 않습니다.
  • 회원혜택) 3만원이상 구매시 회원등급별 2~4% 추가적립

    • 회원등급이 플래티넘, 골드, 실버 등급의 경우 추가적립 됩니다.
    • 추가적립은 실결제액 기준(쿠폰 및 마일리지, 통합포인트, e교환권 사용액 제외) 3만원 이상일 경우 적립됩니다.
    • 주문 후 취소,반품분의 통합포인트는 단품별로 회수되며, 반품으로 인해 결제잔액이 3만원 미만으로 변경될 경우 추가 통합포인트는 전액 회수될 수 있습니다.

제휴 포인트 안내

제휴 포인트 사용

  • OK CASHBAG 10원 단위사용 (사용금액 제한없음)
  • GS&POINT 최대 10만 원 사용
더보기

구매방법 별 배송안내

지역별 도착 예정일

수도권 지역

배송 일정 안내 테이블로 결제 완료 시간, 도착예정일 결제 완료 시간 컬럼의 하위로 평일 0시 ~ 12시 토요일 0시 ~ 11시 평일 12시 ~ 22시 평일 12시 ~ 24시 토요일 11시 ~ 21시 을(를) 나타낸 표입니다.
결제 완료 시간 도착예정일
평일 0시 ~ 12시

토요일 0시 ~ 11시
당일배송 오늘

당일배송 오늘
평일 12시 ~ 22시

평일 12시 ~ 24시

토요일 11시 ~ 21시
새벽배송 내일 07시 이전

내일

일요배송 일요일

수도권 외 (천안, 대전, 울산, 부산, 대구, 창원)

배송 일정 안내 테이블로 결제 완료 시간, 도착예정일 결제 완료 시간 컬럼의 하위로 월~토 0시 ~ 11시 30분 을(를) 나타낸 표입니다.
결제 완료 시간 도착예정일
월~토 0시 ~ 11시 30분
당일배송 오늘

배송 유의사항

  • 새벽배송과 일요배송은 수도권 일부 지역을 대상으로 합니다. 상품 상세페이지에서 도착 예정일을 확인해 주세요.
  • 수도권 외 지역에서 선물포장하기 또는 사은품을 포함하여 주문할 경우 당일배송 불가합니다.
  • 무통장입금 주문 후 당일 배송 가능 시간 이후 입금된 경우 당일 배송 불가합니다.
  • 새벽배송의 경우 공동 현관 출입 번호가 누락 되었거나 틀릴 경우 요청하신 방법으로 출입이 어려워, 부득이하게 공동 현관 또는 경비실 앞에 배송 될 수 있습니다.
  • 학교, 관공서, 회사 등 출입 제한 시간이 있는 곳은 당일배송, 새벽배송, 일요배송이 제공되지 않을 수 있습니다.
  • 공휴일과 겹친 토요일, 일요일은 일요일 배송에서 제외됩니다. 일요배송은 한정 수량에 한해 제공됩니다. 수량 초과 시 일반배송으로 발송되니 주문 시 도착 예정일을 확인해 주세요.
  • 주문 후 배송지 변경 시 변경된 배송지에 따라 익일 배송될 수 있습니다.
  • 수도권 외 지역의 경우 효율적인 배송을 위해 각 지역 매장에서 택배를 발송하므로, 주문 시의 부록과 상이할 수 있습니다.
  • 각 지역 매장에서 재고 부족 시 재고 확보를 위해 당일 배송이 불가할 수 있습니다.
  • 기상악화로 인한 도로 사정으로 일부 지역의 배송 지연이 발생될 수 있습니다.
  • 출고 예정일이 5일 이상인 상품의 경우(결제일로부터 7일 동안 미입고), 출판사 / 유통사 사정으로 품/절판 되어 구입이 어려울 수 있습니다. 이 경우 SMS, 메일로 알려드립니다.
  • 분철상품 주문 시 분철 작업으로 인해 기존 도착 예정일에 2일 정도 추가되며, 당일 배송, 해외 배송이 불가합니다.
  • 해외주문도서는 해외 거래처 사정에 의해 품절/지연될 수 있습니다.
  • 스페셜오더 도서나 일서 해외 주문 도서와 함께 주문 시 배송일이 이에 맞추어 지연되오니, 이점 유의해 주시기 바랍니다.

바로드림존에서 받기

  1. STEP 01
    매장 선택 후 바로드림 주문
  2. STEP 02
    준비완료 알림 시 매장 방문하기
  3. STEP 03
    바로드림존에서 주문상품 받기
  • 바로드림은 전국 교보문고 매장 및 교내서점에서 이용 가능합니다.
  • 잡지 및 일부 도서는 바로드림 이용이 불가합니다.
  • 각 매장 운영시간에 따라 바로드림 이용 시간이 달라질 수 있습니다.

수령 안내

  • 안내되는 재고수량은 서비스 운영 목적에 따라 상이할 수 있으므로 해당 매장에 문의해주시기 바랍니다.
  • 바로드림 주문 후 재고가 실시간 변동되어, 수령 예상 시간에 수령이 어려울 수 있습니다.

취소/교환/반품 안내

  • 주문 후 7일간 찾아가지 않으시면, 자동으로 결제가 취소됩니다.
  • 취소된 금액은 결제수단의 승인취소 및 예치금으로 전환됩니다.
  • 교환/반품은 수령하신 매장에서만 가능합니다.

사은품 관련 안내

  • 바로드림 서비스는 일부 1+1 도서, 경품, 사은품 등이 포함 되지 않습니다.

음반/DVD 바로드림시 유의사항

  • 음반/DVD 상품은 바로드림 주문 후 수령점 변경이 불가합니다. 주문 전 수령점을 꼭 확인해 주세요.
  • 사은품(포스터,엽서 등)은 증정되지 않습니다.
  • 커버이미지 랜덤발매 음반은 버전 선택이 불가합니다.
  • 광화문점,강남점,대구점,영등포점,잠실점은 [직접 찾아 바로드림존 가기], [바로드림존에서 받기] 로 주문시 음반 코너에서 수령확인이 가능합니다
  • 선물 받는 분의 휴대폰번호만 입력하신 후 결제하시면 받는 분 휴대폰으로 선물번호가 전달됩니다.
  • 문자를 받은 분께서는 마이 > 주문관리 > 모바일 선물내역 화면에서 선물번호와 배송지 정보를 입력하시면 선물주문이 완료되어 상품준비 및 배송이 진행됩니다.
  • 선물하기 결제하신 후 14일까지 받는 분이 선물번호를 등록하지 않으실 경우 주문은 자동취소 됩니다.
  • 또한 배송 전 상품이 품절 / 절판 될 경우 주문은 자동취소 됩니다.

바로드림 서비스 안내

  1. STEP 01
    매장 선택 후 바로드림 주문
  2. STEP 02
    준비완료 알림 시 매장 방문하기
  3. STEP 03
    바로드림존에서 주문상품 받기
  • 바로드림은 전국 교보문고 매장 및 교내서점에서 이용 가능합니다.
  • 잡지 및 일부 도서는 바로드림 이용이 불가합니다.
  • 각 매장 운영시간에 따라 바로드림 이용 시간이 달라질 수 있습니다.

수령 안내

  • 안내되는 재고수량은 서비스 운영 목적에 따라 상이할 수 있으므로 해당 매장에 문의해주시기 바랍니다.
  • 바로드림 주문 후 재고가 실시간 변동되어, 수령 예상시간에 수령이 어려울 수 있습니다.

취소/교환/반품 안내

  • 주문 후 7일간 찾아가지 않으시면, 자동으로 결제가 취소됩니다.
  • 취소된 금액은 결제수단의 승인취소 및 예치금으로 전환됩니다.
  • 교환/반품은 수령하신 매장에서만 가능합니다.

사은품 관련 안내

  • 바로드림 서비스는 일부 1+1 도서, 경품, 사은품 등이 포함되지 않습니다.

음반/DVD 바로드림시 유의사항

  • 음반/DVD 상품은 바로드림 주문 후 수령점 변경이 불가합니다. 주문 전 수령점을 꼭 확인해주세요.
  • 사은품(포스터,엽서 등)은 증정되지 않습니다.
  • 커버이미지 랜덤발매 음반은 버전 선택이 불가합니다.
  • 광화문점,강남점,대구점,영등포점,잠실점은 [직접 찾아 바로드림존 가기], [바로드림존에서 받기] 로 주문시 음반코너에서 수령확인이 가능합니다.
  1. STEP 01
    픽업박스에서 찾기 주문
  2. STEP 02
    도서준비완료 후 휴대폰으로 인증번호 전송
  3. STEP 03
    매장 방문하여 픽업박스에서 인증번호 입력 후 도서 픽업
  • 바로드림은 전국 교보문고 매장 및 교내서점에서 이용 가능합니다.
  • 잡지 및 일부 도서는 바로드림 이용이 불가합니다.
  • 각 매장 운영시간에 따라 바로드림 이용 시간이 달라질 수 있습니다.

수령 안내

  • 안내되는 재고수량은 서비스 운영 목적에 따라 상이할 수 있으므로 해당 매장에 문의해주시기 바랍니다.
  • 바로드림 주문 후 재고가 실시간 변동되어, 수령 예상시간에 수령이 어려울 수 있습니다.

취소/교환/반품 안내

  • 주문 후 7일간 찾아가지 않으시면, 자동으로 결제가 취소됩니다.
  • 취소된 금액은 결제수단의 승인취소 및 예치금으로 전환됩니다.
  • 교환/반품은 수령하신 매장에서만 가능합니다.

사은품 관련 안내

  • 바로드림 서비스는 일부 1+1 도서, 경품, 사은품 등이 포함되지 않습니다.

음반/DVD 바로드림시 유의사항

  • 음반/DVD 상품은 바로드림 주문 후 수령점 변경이 불가합니다. 주문 전 수령점을 꼭 확인해주세요.
  • 사은품(포스터,엽서 등)은 증정되지 않습니다.
  • 커버이미지 랜덤발매 음반은 버전 선택이 불가합니다.
  • 광화문점,강남점,대구점,영등포점,잠실점은 [직접 찾아 바로드림존 가기], [바로드림존에서 받기] 로 주문시 음반코너에서 수령확인이 가능합니다.

도서 소득공제 안내

  • 도서 소득공제란?

    • 2018년 7월 1일 부터 근로소득자가 신용카드 등으로 도서구입 및 공연을 관람하기 위해 사용한 금액이 추가 공제됩니다. (추가 공제한도 100만원까지 인정)
      • 총 급여 7,000만 원 이하 근로소득자 중 신용카드, 직불카드 등 사용액이 총급여의 25%가 넘는 사람에게 적용
      • 현재 ‘신용카드 등 사용금액’의 소득 공제한도는 300만 원이고 신용카드사용액의 공제율은 15%이지만, 도서·공연 사용분은 추가로 100만 원의 소득 공제한도가 인정되고 공제율은 30%로 적용
      • 시행시기 이후 도서·공연 사용액에 대해서는 “2018년 귀속 근로소득 연말 정산”시기(19.1.15~)에 국세청 홈택스 연말정산간소화 서비스 제공
  • 도서 소득공제 대상

    • 도서(내서,외서,해외주문도서), eBook(구매)
    • 도서 소득공제 대상 상품에 수반되는 국내 배송비 (해외 배송비 제외)
      • 제외상품 : 잡지 등 정기 간행물, 음반, DVD, 기프트, eBook(대여,학술논문), 사은품, 선물포장, 책 그리고 꽃
      • 상품정보의 “소득공제” 표기를 참고하시기 바랍니다.
  • 도서 소득공제 가능 결제수단

    • 카드결제 : 신용카드(개인카드에 한함)
    • 현금결제 : 예치금, 교보e캐시(충전에한함), 해피머니상품권, 컬쳐캐쉬, 기프트 카드, 실시간계좌이체, 온라인입금
    • 간편결제 : 교보페이, 네이버페이, 삼성페이, 카카오페이, PAYCO, 토스, CHAI
      • 현금결제는 현금영수증을 개인소득공제용으로 신청 시에만 도서 소득공제 됩니다.
      • 교보e캐시 도서 소득공제 금액은 교보eBook > e캐시 > 충전/사용내역에서 확인 가능합니다.
      • SKpay, 휴대폰 결제, 교보캐시는 도서 소득공제 불가
  • 부분 취소 안내

    • 대상상품+제외상품을 주문하여 신용카드 "2회 결제하기"를 선택 한 경우, 부분취소/반품 시 예치금으로 환원됩니다.

      신용카드 결제 후 예치금으로 환원 된 경우 승인취소 되지 않습니다.

  • 도서 소득공제 불가 안내

    • 법인카드로 결제 한 경우
    • 현금영수증을 사업자증빙용으로 신청 한 경우
    • 분철신청시 발생되는 분철비용

알림 신청

아래의 알림 신청 시 원하시는 소식을 받아 보실 수 있습니다.
알림신청 취소는 마이룸 > 알림신청내역에서 가능합니다.

대용량 시스템 구축을 위한 MYSQL 성능 최적화
신고

신고 사유를 선택해주세요.
신고 내용은 이용약관 및 정책에 의해 처리됩니다.

허위 신고일 경우, 신고자의 서비스 활동이 제한될 수 있으니 유의하시어
신중하게 신고해주세요.

판형알림

  • A3 [297×420mm]
  • A4 [210×297mm]
  • A5 [148×210mm]
  • A6 [105×148mm]
  • B4 [257×364mm]
  • B5 [182×257mm]
  • B6 [128×182mm]
  • 8C [8절]
  • 기타 [가로×세로]
EBS X 교보문고 고객님을 위한 5,000원 열공 혜택!
자세히 보기

해외주문양서 배송지연 안내

현재 미국 현지 눈폭풍으로 인해
해외 거래처 출고가 지연되고 있습니다.

해외주문양서 주문 시
예상 출고일보다 배송기간이 더 소요될 수 있으니
고객님의 너그러운 양해 부탁드립니다.

감사합니다.