2017-12-04 1 views
0

내가 이전 질문을 통해 검색을 했어하지만 내 질문에 정확히 일치 찾을 수없는 바이너리 로그 경우 : 바이너리 로그의 타임 스탬프 세트가MySQL의에서 설정 한 타임 스탬프

쿼리 트랜잭션 동안 어떤 시점에서과 그런 다음 이진 로그에 기록됩니까?

컨텍스트 : 나는 마스터/슬레이브 복제를 사용하는 DB로 작업 해왔다. 노예가 마스터 서버 뒤에 떨어지는 경우가 많으며 동일한 타임 스탬프를 공유하는 바이너리 로그에 많은 트랜잭션이 있기 때문에 분명히 확신 할 수 있습니다. 제가 많이 말할 때 1 시간 동안 9000 개 이상의 항목에 속하는 타임 스탬프가 150 개 이상 (9000 개 항목 이하로 반환 된 나머지)에 대해 이야기하고 있습니다. 이것은 사용 발견 : 타임 스탬프를 공유하는 트랜잭션의 수는 마스터 서버에 부하를 반영하는 경우

mysqlbinlog bin-log.0001 | grep 'TIMESTAMP' | uniq -c | awk '{if ($1>9000){print $0}} ' | sed -e 's/\/\*\!\*\/;//g' | gawk -F '=' '{cmd="date -d @"$2; cmd | getline d; print $1"="$2"\t("d")"; close(d)}' 

그래서 나는 기본적으로 운동에 노력하고있어,이 숫자는 특별한 여부.

Second_behind_master를 그래프로 나타낼 때 선형 성장을 보여 주며 갑자기 떨어지는 현상이 발생하여 같은 것을 제안합니다.

MySQL 버전은 5.6.33입니다.

답변

0

여기 '슬레이브 지연'에 대한 몇 가지 이유가있을 수 있습니다. 여기에는 자세히 대답하기가 어렵습니다. 2 진 로그 시간 소인은 트랜잭션 시작시 작성됩니다.

여기에 증상의 원인을 식별하는 방법을 안내하는 유용한 게시물이 있습니다. https://www.percona.com/blog/2014/05/02/how-to-identify-and-cure-mysql-replication-slave-lag/ 예를 들어 Seconds_Behind_Master 매개 변수는 릴레이 로그의 타임 스탬프 간의 차이 만 측정하기 때문에 오해의 소지가있을 수 있습니다 가장 최근에 IO_THREAD에 의해 다운로드 된 릴레이 로그 항목과 비교하여 최근에 실행 된 것입니다.

사이트에서 도움이되는 다른 많은 리소스를 찾을 수 있습니다. 여기에는 Percona Toolkit이 포함되어 있습니다. Percona 소프트웨어는 전적으로 무료이며 오픈 소스처럼 블로그 게시물에 언급되어 있습니다.

공개 사항 : 저는 Percona에서 일하고 있습니다.

+0

따라서 마스터 서버에서 동시에 시작되는 대량의 트랜잭션이있는 것으로 보입니다. 나는 덤프 파일을 통해 가능한 한 빨리 폭발을 일으키기 때문에 덤프 백업을 통해 데이터를 마스터로 가져 오는 동안 이러한 종류의 동작이 발생할 것으로 예상됩니까? –