HOME > Detail View

Detail View

MySQL troubleshooting : MySQL 문제 해결 가이드

Material type
단행본
Personal Author
Smirnova, Sveta 강권학, 역
Title Statement
MySQL troubleshooting : MySQL 문제 해결 가이드 / 스베타 스머노바 지음 ; 강권학 옮김
Publication, Distribution, etc
서울 :   한빛미디어,   2013  
Physical Medium
336 p. ; 24 cm
Varied Title
MySQL troubleshooting : what to do when queries don't work
기타표제
판권기표제: MySQL troubleshooting : 쿼리 문제! 원인을 알면 해결은 쉽다
ISBN
9788979149999
General Note
부록: 참고자료  
Bibliography, Etc. Note
참고문헌(p. 321-324)과 색인수록
000 00000cam c2200205 c 4500
001 000046053960
005 20201103104309
007 ta
008 201102s2013 ulk b 001c kor
020 ▼a 9788979149999 ▼g 13560
035 ▼a (KERIS)BIB000013071852
040 ▼a 211061 ▼c 211009 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.7585 ▼2 23
085 ▼a 005.7585 ▼2 DDCK
090 ▼a 005.7585 ▼b 2013z12
100 1 ▼a Smirnova, Sveta
245 1 0 ▼a MySQL troubleshooting : ▼b MySQL 문제 해결 가이드 / ▼d 스베타 스머노바 지음 ; ▼e 강권학 옮김
246 1 ▼i 판권기표제: ▼a MySQL troubleshooting : ▼b 쿼리 문제! 원인을 알면 해결은 쉽다
246 1 9 ▼a MySQL troubleshooting : ▼b what to do when queries don't work
260 ▼a 서울 : ▼b 한빛미디어, ▼c 2013
300 ▼a 336 p. ; ▼c 24 cm
500 ▼a 부록: 참고자료
504 ▼a 참고문헌(p. 321-324)과 색인수록
700 1 ▼a 강권학, ▼e
900 1 0 ▼a 스머노바, 스베타
945 ▼a KLPA

Holdings Information

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.7585 2013z12 Accession No. 121254686 Availability Available Due Date Make a Reservation Service B M

Contents information

Book Introduction

MySQL을 운영하면서 생기는 문제의 원인과 해결 방법, 예방법을 자세히 소개한 책. 원인 분석이라는 흐름 속에서 놓치기 쉬운 간단한 문제 해결법부터, 문제 예방을 위한 MySQL 환경 설정법, 서드파티 솔루션 문제 해결 등 MySQL에서 발생하는 여러 가지 장애를 해결하는 방법을 풍부한 예제로 설명한다.

[이 책의 특징과 장점]

ㆍ 멀티스레드 환경에서 애플리케이션을 실행할 때 발생하는 문제를 해결한다.
ㆍ MySQL 환경 설정 때문에 발생한 문제를 디버깅하고 해결한다.
ㆍ 운영 체제 튜닝이 서버에 미치는 영향을 이해한다.
ㆍ 데이터를 이중화할 때 필요한 특별한 문제 해결 기법을 소개한다.
ㆍ 서드파티 솔루션 및 추가적인 문제 해결 기법과 도구 정보를 제공한다.

[어떤 독자를 위한 책인가?]

ㆍ MySQL을 운영하고 있는 데이터베이스 관리자
ㆍ MySQL과 연동한 애플리케이션을 개발하는 개발자
ㆍ 각 회사의 MySQL 기술 지원 담당자
ㆍ MySQL을 능숙하고 다루기 원하는 대학생

[도서 특징(책 표지 글)]

버그, 성능 저하, 치명적 오류, 데이터 훼손, 엉뚱한 데이터가 출력되는 문제 등은 데이터베이스 관리자나 DBA라면 늘 겪는 일이다. 이런 문제 해결의 지름길은 원인 분석이다. 원인만 알면 문제는 금방 해결할 수 있다. 이 책은 원인 분석이라는 흐름 속에서 놓치기 쉬운 간단한 문제 해결법부터, 문제 예방을 위한 MySQL 환경 설정법, 서드파티 솔루션 문제 해결 등 MySQL에서 발생하는 여러 가지 장애를 해결하는 방법을 풍부한 예제로 설명한다. 빅데이터가 주목받으면서 NoSQL 데이터베이스에 관한 관심이 높아졌지만 MySQL은 여전히 데이터베이스 관리와 분석의 기본이다. 이 책과 함께 데이터베이스 전문가로 도약해보자.

[지은이 서문]

필자는 2006년 5월부터 MySQL AB(이후 썬에, 그 다음에는 오라클에 합병되었다)의 MySQL 지원 그룹 버그 검증팀에서 수석 기술 지원 엔지니어로 근무해왔다. 그러면서 업무를 통해 어떤 문제에 막혀 그 다음에는 어떻게 해야 할지 알지 못해 전전긍긍해 하는 사용자들을 종종 보아왔다. 문제의 원인을 찾고 효과적으로 해결하는 제대로 검증된 방법들이 있지만 쏟아지는 정보 속에서 검증된 방법을 추려내기는 매우 힘들었다. 물론 책, 블로그, 웹 페이지에 있는 수백 가지 정보들이 MySQL 서버의 여러 부분을 자세히 설명하고 있다. 그러나 이 정보들은 MySQL 서버가 정상적으로 작동하는 방법을 설명하는 데 주안점을 두고 있으며, 장애나 오작동의 원인을 찾아내는 방법은 설명하지 않으므로 문제 해결이 어렵다.
사실 앞에서 소개한 정보들을 잘 조합하면 MySQL을 운용하는 데 필요한 모든 측면을 자세히 설명할 수 있다. 하지만 문제가 발생하는 원인을 알지 못하면 문서가 설명하는 수십 가지 가능한 원인 중에 진짜 원인을 알아낼 수 없다. 여러분이 전문가에게 문제의 원인을 물어봐도 전문가는 여러 가능성만을 나열할 수 있을 뿐, 결국 진짜 원인은 여러분이 찾아내야 한다. 진짜 원인을 찾아내지 못하고 수정하면 문제를 일시적으로 숨기거나 더 악화시킬 뿐이다.
따라서 SQL 문장이나 설정 옵션을 바꿔 문제가 사라지더라도 문제의 원인을 파악하는 것은 정말 중요하다. 문제의 원인을 알면 문제를 영원히 해결할 수 있고 향후에 같은 문제가 재발되지 않게 할 수 있다.
이 책은 SQL 애플리케이션이나 MySQL 설정에서 발생하는 에러의 원인을 찾아내고 문제를 해결하기 위해 필자가 사용해온 방법을 설명한다.


Information Provided By: : Aladin

Author Introduction

스베타 스머노바(지은이)

오라클 MySQL 지원 그룹 버그 검증 팀에서 수석 기술 지원 엔지니어로 근무하고 있습니다. 매일 까다로운 지원 문제와 MySQL 버그를 해결하고자 애쓰고 있습니다. 2006년 MySQL을 본격적으로 다루기 전에는 여러 폐쇄적인 CRM 시스템의 웹 개발자로 근무한 경험도 있습니다. 평소 오픈 소스 커뮤니티에 적극 참여하며, 주요 관심사는 DBA 문제 해결 과정을 반자동화하는 방법을 찾는 일입니다.

강권학(옮긴이)

중앙대학교 컴퓨터공학과에서 학사와 석사학위를 받았다. 국방과학연구소, 퓨쳐시스템, 안철수연구소에서 13년간 개발자, 보안전문가, 프로젝트 관리자로 근무하였으며, 2009년 4월 호주 멜버른에 iGonagi Pty. Ltd.를 설립하고 아이폰 애플리케이션을 개발하고 있다. 번역서로는 『게임 디자인 레벨업 가이드(공역)』, 『Head First Python』, 『안드로이드 시큐리티 인터널』, 『Head First JavaScript Programming』, 『비즈니스를 위한 데이터 과학』, 『C++ AMP』, 『Head First C』, 『iPhone 3D Programming』, 『iPhone Programming(공역)』, 『Head First iPhone Development』(이상 한빛미디어) 등이 있다.

Information Provided By: : Aladin

Table of Contents

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 생각해볼 거리

부록 참고 자료
__유용한 정보가 담겨 있는 참고 자료
__버그와 지식 데이터베이스
__온라인 포털
__도움을 요청할 수 있는 곳
__책

New Arrivals Books in Related Fields