일상의 문제로 데이터베이스 접근을 마무리 _ 뒤 전장 연습 내용

선택 정보가 null는 아니고, INFO이 좋아 '를 선택하지 곳 information_schema.processlist에서 , DB \ G 시간 순서 information_schema.processlist %의에서'

실행 시간을 기준으로 오름차순으로, 더 이상 실행 시간 SQL의 일부를 보려면

쇼 엔진 이노 상태 \의 G는
교착 상태, 트랜잭션 실행 상태, 잠금 대기 정보를 볼 수 있습니다

userstat가 관련 모니터링 명령 :
플러시 USER_STATISTICS,
플러시 TABLE_STATISTICS,
, 세트, (주) 무료 LONG_QUERY_TIME = 0 가입
플러시 로그,
쇼 PROCESSLIST를;

선택 하지 ( '관리자', '발열', '모니터', '#의 mysql_system 번호') \ G에서 사용자가 information_schema.USER_STATISTICS에서
선택
information_schema.TABLE_STATISTICS 어디에서 TABLE_NAME하지 ( 'MySQL을', 'DB') \ G에

데이터베이스 처리 지연 :
1. 다음과 같이 데이터베이스 지연 될 수있다 : 큰 SQL 데이터 변경을 수행하는 마스터 라이브러리 리드; B 마스터 저장소 동시 기록 액 분출; C 쿼리에서 데이터베이스, 또는 다른 동작이 디스크 IO 발생할 ... 또는 CPU 병목 현상 또는 잠금 장치, 라이브러리 하드웨어 문제에서 D 낮은 성능을 발생합니다.
2. 치료 :
연구 개발은 케이스를 만들고, 작은 작업으로 작업의 해체는 재발을 방지하기 위해 제안 할 수 있습니다.
B를 자주하는 경우, 주님을 위해. 확장에서 쓸 수 없습니다, 다음 라이브러리 조작 해체 준비 사업에 쓰여진 단어, 통제 할 수없는, RD는 확인을 의사 소통을 찾을
. 관련 상황의 RD 통지를 C 그것을 필요 SQL 인 경우, SQL이 특별한 통계 라이브러리에 넣어 말할 수를 실행, 조립 라인, 또는 SQL을 분할하는 개발자를 가능하게 해결 경보 임계 값을 올립니다. 잠금 인 경우, 예를 들어, 필요 MDL은 쿼리를 해결하기 위해 해당 릴리스 후 잠금을 죽일 수 있습니다.
라이브러리가있는 경우 라이브러리에서 새 긴급 수리를 다시 배포 할 필요가없는 경우 라. 당신은, 라이브러리에서 수리를 중지 고려할 수 있습니다

SQL을 죽일이 연결이 일치
--match-명령을 PT-죽일 쿼리 --busy -time 5 --host dbxx --port 5002 --interval --print --kill --victims 모든 --match-정보 = "별개의 (Issue_label)을 선택합니다"

filesort SQL되고 죽여
킬 (kill) - 쿼리 --match 스테이트 명령 "정렬 결과"시간과 일치 --- 백금 --- 바쁜 172.27.1.203 5 --host --port 5002 --interval --print 2. - --victims 죽일 모든 -uduzq -p123

추천

출처blog.51cto.com/1348916/2444368