MySQL Troubleshooting
도서+사은품 또는 도서+사은품+교보Only(교보굿즈)
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
로그아웃 : '서울시 종로구 종로1' 주소 기준
이달의 꽃과 함께 책을 받아보세요!
1권 구매 시 결제 단계에서 적용 가능합니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
작가정보
저자(글) 스베타 스머노바
저자 스베타 스머노바는 오라클 MySQL 지원 그룹 버그 검증 팀에서 수석 기술 지원 엔지니어로 근무하고 있습니다. 매일 까다로운 지원 문제와 MySQL 버그를 해결하고자 애쓰고 있습니다. 2006년 MySQL을 본격적으로 다루기 전에는 여러 폐쇄적인 CRM 시스템의 웹 개발자로 근무한 경험도 있습니다. 평소 오픈 소스 커뮤니티에 적극 참여하며, 주요 관심사는 DBA 문제 해결 과정을 반자동화하는 방법을 찾는 일입니다.
역자 강권학은 중앙대학교 컴퓨터공학과에서 학사와 석사 학위를 받았습니다. 국방과학연구소, 퓨쳐시스템, 안철수연구소에서 13년간 개발자, 보안전문가, 프로젝트 관리자로 근무했으며, 2009년 4월 호주 멜번에 iGonagi Pty. Ltd.를 설립하고 아이폰 앱을 개발하고 있습니다. 『Head First iPhone Development』, 『Head First Programming』, 『Head First Python』, 『iPhone Programming 제대로 배우기』, 『iPhone 3D Programming: using OpenGL ES』, 『Head First C』 (이상 한빛미디어)를 번역했습니다.
목차
- 1장 기본적인 문제
__1.1 잘못된 구문
__1.2 SELECT문의 잘못된 결과
__1.3 이전 갱신에 의한 문제
__1.4 쿼리 결과 확인하기
__1.5 데이터 에러 추적하기
__1.6 느린 쿼리
____1.6.1 EXPLAIN 명령의 정보로 쿼리 튜닝하기
____1.6.2 테이블 튜닝과 인덱스
____1.6.3 최적화를 멈춰야 할 때
____1.6.4 옵션의 영향
____1.6.5 데이터를 수정하는 쿼리
____1.6.6 만병통치약은 없다
__1.7 서버 응답이 없을 때
__1.8 스토리지 엔진 고유의 문제
____1.8.1 MyISAM 손상
____1.8.2 InnoDB 손상
__1.9 권한 문제
2장 동시성 문제
__2.1 락과 트랜잭션
__2.2 락
____2.2.1 테이블 락
____2.2.2 행 락
__2.3 트랜잭션
____2.3.1 숨어 있는 쿼리
____2.3.2 데드락
____2.3.3 암묵적 커밋
__2.4 메타데이터 락
____2.4.1 메타데이터 락과 구형 모델
__2.5 동시성이 성능에 미치는 영향
____2.5.1 동시성 문제에 대해 InnoDB 트랜잭션 감시하기
____2.5.2 동시성 문제에 대해 다른 리소스 감시하기
__2.6 그 외의 락 문제
__2.7 이중화와 동시성
____2.7.1 문장 기반 이중화의 문제
____2.7.2 트랜잭션과 비트랜잭션 테이블 혼합하기
____2.7.3 보조 서버에서 발생하는 문제
__2.8 MySQL 문제 해결 도구를 효과적으로 사용하기
____2.8.1 SHOW PROCESSLIST 명령과 INFORMATION_SCHEMA.PROCESSLIST 테이블
____2.8.2 SHOW ENGINE INNODB STATUS 명령과 InnoDB 모니터
____2.8.3 INFORMATION_SCHEMA 테이블
____2.8.4 PERFORMANCE_SCHEMA 테이블
____2.8.5 로그 파일
3장 서버 옵션 영향
__3.1 서비스 옵션
__3.2 서버 작동을 바꾸는 변수
__3.3 하드웨어 리소스 제한 옵션
__3.4 --no-defaults 옵션
__3.5 성능 옵션
__3.6 서두르면 망친다
__3.7 SET문
__3.8 옵션 영향 확인 방법
__3.9 변수 설명
____3.9.1 서버와 클라이언트에 영향을 주는 옵션
____3.9.2 성능에 관련된 옵션
____3.9.3 옵션에 대한 안전한 값 계산하기
4장 MySQL 환경
__4.1 물리적인 하드웨어 제한
____4.1.1 램
____4.1.2 프로세서와 코어
____4.1.3 디스크 I/O
____4.1.4 네트워크 대역폭
____4.1.5 지연 영향의 사례
__4.2 운영체제 제한
__4.3 다른 소프트웨어의 영향
5장 이중화 문제 해결
__5.1 보조 서버 상태 표시하기
__5.2 I/O 스레드 문제 해결하기
__5.3 SQL 스레드 문제 해결하기
____5.3.1 주 서버와 보조 서버의 데이터가 다를 때
____5.3.2 순환 이중화와 보조 서버에 비이중화 쓰기
____5.3.3 불완전하거나 변경된 SQL문
____5.3.4 주 서버와 보조 서버에서 다른 에러
____5.3.5 환경 설정
____5.3.6 보조 서버가 주 서버보다 실행 속도가 많이 느릴 때
6장 문제 해결 기법과 도구
__6.1 쿼리
____6.1.1 느린 쿼리 로그
____6.1.2 사용자가 정의할 수 있는 도구
____6.1.3 MySQL 명령행 인터페이스
__6.2 환경의 영향
__6.3 샌드박스
__6.4 에러와 로그
____6.4.1 다시 보는 에러 정보
____6.4.2 크래시
__6.5 정보 수집 도구
____6.5.1 정보 스키마
____6.5.2 InnoDB 정보 스키마 테이블
____6.5.3 InnoDB 모니터
____6.5.4 성능 스키마
____6.5.5 SHOW [GLOBAL] STATUS
__6.6 문제 단순화하기(테스트 케이스의 최소화)
__6.7 문제를 해결하는 일반적인 단계
__6.8 테스트 방법
____6.8.1 새로운 버전에 쿼리 시도하기
____6.8.2 알려진 버그 확인하기
____6.8.3 문제 회피하기
__6.9 특별한 테스트 도구
____6.9.1 벤치마크 도구
____6.9.2 Gypsy
____6.9.3 MySQL 테스트 프레임워크
__6.10 유지 보수 도구
____6.10.1 MySQL 배포판에 제공되는 도구
____6.10.2 퍼코나 툴킷
____6.10.3 MySQL WB 유틸리티
____6.10.4 모니터링 도구
7장 좋은 습관
__7.1 백업
____7.1.1 백업 계획하기
____7.1.2 백업의 종류
____7.1.3 도구
__7.2 필요한 정보 수집하기
____7.2.1 이 모든 정보가 의미하는 것은
__7.3 테스트
__7.4 예방
____7.4.1 권한
____7.4.2 환경
__7.5 생각해볼 거리
부록 참고 자료
__유용한 정보가 담겨 있는 참고 자료
__버그와 지식 데이터베이스
__온라인 포털
__도움을 요청할 수 있는 곳
__책
출판사 서평
이 책이 제시하는 핵심 내용
MySQL을 운영하면서 생기는 문제의 원인과 해결 방법, 예방법을 자세히 소개한다.
이 책의 특징과 장점
· 멀티스레드 환경에서 애플리케이션을 실행할 때 발생하는 문제를 해결한다.
· MySQL 환경 설정 때문에 발생한 문제를 디버깅하고 해결한다.
· 운영 체제 튜닝이 서버에 미치는 영향을 이해한다.
· 데이터를 이중화할 때 필요한 특별한 문제 해결 기법을 소개한다.
· 서드파티 솔루션 및 추가적인 문제 해결 기법과 도구 정보를 제공한다.
어떤 독자를 위한 책인가?
· MySQL을 운영하고 있는 데이터베이스 관리자
· MySQL과 연동한 애플리케이션을 개발하는 개발자
· 각 회사의 MySQL 기술 지원 담당자
· MySQL을 능숙하고 다루기 원하는 대학생
도서 특징(책 표지 글)
버그, 성능 저하, 치명적 오류, 데이터 훼손, 엉뚱한 데이터가 출력되는 문제 등은 데이터베이스 관리자나 DBA라면 늘 겪는 일이다. 이런 문제 해결의 지름길은 원인 분석이다. 원인만 알면 문제는 금방 해결할 수 있다. 이 책은 원인 분석이라는 흐름 속에서 놓치기 쉬운 간단한 문제 해결법부터, 문제 예방을 위한 MySQL 환경 설정법, 서드파티 솔루션 문제 해결 등 MySQL에서 발생하는 여러 가지 장애를 해결하는 방법을 풍부한 예제로 설명한다. 빅데이터가 주목받으면서 NoSQL 데이터베이스에 관한 관심이 높아졌지만 MySQL은 여전히 데이터베이스 관리와 분석의 기본이다. 이 책과 함께 데이터베이스 전문가로 도약해보자.
지은이 서문
필자는 2006년 5월부터 MySQL AB(이후 썬에, 그 다음에는 오라클에 합병되었다)의 MySQL 지원 그룹 버그 검증팀에서 수석 기술 지원 엔지니어로 근무해왔다. 그러면서 업무를 통해 어떤 문제에 막혀 그 다음에는 어떻게 해야 할지 알지 못해 전전긍긍해 하는 사용자들을 종종 보아왔다. 문제의 원인을 찾고 효과적으로 해결하는 제대로 검증된 방법들이 있지만 쏟아지는 정보 속에서 검증된 방법을 추려내기는 매우 힘들었다. 물론 책, 블로그, 웹 페이지에 있는 수백 가지 정보들이 MySQL 서버의 여러 부분을 자세히 설명하고 있다. 그러나 이 정보들은 MySQL 서버가 정상적으로 작동하는 방법을 설명하는 데 주안점을 두고 있으며, 장애나 오작동의 원인을 찾아내는 방법은 설명하지 않으므로 문제 해결이 어렵다.
사실 앞에서 소개한 정보들을 잘 조합하면 MySQL을 운용하는 데 필요한 모든 측면을 자세히 설명할 수 있다. 하지만 문제가 발생하는 원인을 알지 못하면 문서가 설명하는 수십 가지 가능한 원인 중에 진짜 원인을 알아낼 수 없다. 여러분이 전문가에게 문제의 원인을 물어봐도 전문가는 여러 가능성만을 나열할 수 있을 뿐, 결국 진짜 원인은 여러분이 찾아내야 한다. 진짜 원인을 찾아내지 못하고 수정하면 문제를 일시적으로 숨기거나 더 악화시킬 뿐이다.
따라서 SQL 문장이나 설정 옵션을 바꿔 문제가 사라지더라도 문제의 원인을 파악하는 것은 정말 중요하다. 문제의 원인을 알면 문제를 영원히 해결할 수 있고 향후에 같은 문제가 재발되지 않게 할 수 있다.
이 책은 SQL 애플리케이션이나 MySQL 설정에서 발생하는 에러의 원인을 찾아내고 문제를 해결하기 위해 필자가 사용해온 방법을 설명한다.
기본정보
ISBN | 9788979149999 | ||
---|---|---|---|
발행(출시)일자 | 2013년 02월 20일 | ||
쪽수 | 336쪽 | ||
크기 |
183 * 235
* 30
mm
/ 600 g
|
||
총권수 | 1권 | ||
원서(번역서)명/저자명 | MySQL troubleshooting/Bell, Charles |
Klover 리뷰 (3)
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집 (0)
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)
구매 후 리뷰 작성 시, e교환권 100원 적립