슬레이브 디버깅이 마스터보다 뒤쳐져있는 동안 글로벌 변수 이 발견되었습니다. innodb_file_format은 슬레이브와 마스터 시스템에서 다릅니다. 마스터는 바라쿠다으로 설정되고 슬레이브는 영양으로 설정됩니다.. 슬레이브 지연에 영향을 줍니까?mysql 전역 변수 'innodb_file_format'값이 마스터와 슬레이브에서 다릅니다
1
A
답변
0
5000 초는 83 분입니다. 그것은 22 분 이상이므로, 다른 일이 계속되고 있습니다.
file_format 아마은 차이점을 설명하지 않습니다. binlog_format
은 무엇입니까? (아마도 그 중 하나는 중요하지 않으며 단지 게임에 참여하기를 원합니다.)
가장 느린 쿼리를 해당 테이블에 대해 SHOW CREATE TABLE
과 함께 보도록하겠습니다. 우리는 아마도 그들 중 일부의 속도를 높이는 방법을 제안 할 수 있습니다. 수도
innofb_flush_log_at_trx_commit
는 큰 영향 IO 성능을 가지고있다. HDD 나 SSD가 있습니까? 22 분 동안 몇 건의 거래가 있었습니까? =2
은 빠르지 만 안전하지 않습니다. 일반적으로 슬레이브에게는 좋습니다. =1
은 더 느리지 만 안전합니다. 일반적으로 마스터에게는 좋습니다. 나는 당신이 그 (것)들을 거꾸로 사기를 제안한다.
보통 슬레이브 지연은 트랜잭션이 마스터에서 (다른 연결에서) 병렬로 실행 됨으로 인해 발생합니다. 그럴까요? 슬레이브는 단일 스레드입니다. 어떤 MySQL 버전입니까? 최신 버전에만 병렬 처리 옵션이 있습니다.
물어볼 필요가있는 것까지 지금까지 무엇을 했습니까? –
그래서 느린 쿼리를 통해 22 분의 시간 간격으로 약 14 개의 느린 쿼리를 발견했습니다. 그러나 노예는 5000 초 뒤쳐졌다. 그런 다음 전역 변수 값의 차이점을 살펴 보았습니다. 2 개의 주 변수의 값이 일치하지 않음 ** innodb_flush_log_at_trx_commit ** 및 ** innodb_file_format **. ** innodb_flush_log_at_trx_commit **는 마스터에서는 2로 설정되고 슬레이브에서는 1로 설정됩니다. 노예의 지체에 분명히 공헌 한 것입니다. 또한 ** innodb_file_format **에 대해 알고 싶습니다. 노예 지연의 경우에도이 사실을 시사 할 수 있습니까? –