본문 바로가기

MySQL24

MySQL 8 및 MySQL 5.7 메모리 소비 대규모 시스템에서 테스트 및 개발을 위한 MySQL을 실행하는 경우가 많지만 때로는 작은 클라우드 인스턴스에서 MySQL을 실행하거나 랩톱에서 실행하고 싶을 때가 있습니다. 이러한 경우 MySQL 8 및 MySQL 5.7 메모리 소비가 매우 중요합니다. MySQL 8과 MySQL 5.7을 비교할 때 MySQL 8이 더 많은 메모리를 사용한다는 것을 알아야 합니다. 동일한 워크로드를 실행하는 MySQL 8 및 MySQL 5.7이 있는 1GB VM에 대한 기본 테스트에서 다음 vmstat을 표시됩니다. MySQL 5.7 vmstat 출력 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free b.. 2021. 8. 24.
pt-kill pt-kill은 이해하기 어렵고 예제가 많지 않습니다. pt-kill의 가장 일반적인 사용법에 대해 알아 봅시다. pt-kill 은 SHOW PROCESSLIST에서 쿼리를 캡처하고 필터링한 다음 종료하거나 인쇄합니다. 용도는 너무 많은 리소스를 소비할 수 있는 쿼리를 감시하고 종료하는 것입니다. 보통은 쿼리 종료에 사용하지만 주어진 옵션에 따라 출력도 할 수 있습니다. 일반적으로 pt-kill 은 MySQL에 연결하여 SHOW PROCESSLIST에서 쿼리를 가져 오지만 파일에서 SHOW PROCESSLIST 출력을 읽을 수 있습니다. 이 경우 pt-kill 은 MySQL에 연결하지 않으며 '--kill' 옵션이 효과가 없습니다. '--print'는 파일을 읽을 때 대신 사용해야 합니다. 파일을 읽는 .. 2021. 8. 19.
ONLY_FULL_GROUP_BY SQL 쿼리 실패 MySQL을 업그레이드 한 후 정상적으로 수행되던 쿼리가 "ERROR 1055 (42000): Expression #2 of SELECT list is not in GROUP BY clause" 에러와 함께 수행이 되지 않는 경우가 있습니다. ERROR 1055 (42000): Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'test.web_log.user_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by SQL_MODE .. 2021. 8. 12.
MySQL sorted index 생성 인덱스 처리에 대해 이해하고 있다면 데이터 삽입을 위한 적절한 공간을 예약하려는 경우에 도움이 될 수 있습니다. MySQL 5.7부터 이전 릴리스에서 사용된 하향식 접근 방식이 아닌 상향식 접근 방식을 적용하여 InnoDB용 보조 인덱스를 구축하는 방식으로 변경했습니다. 인덱스 구축 프로세스 기존 데이터가 있는 테이블에 인덱스를 작성하기 위한 단계가 있습니다. 읽기 단계(클러스터형 인덱스에서 읽고 보조 인덱스 항목 작성) 병합 정렬 단계 삽입 단계(정렬된 레코드를 보조 색인에 삽입) 버전 5.6까지 MySQL은 한 번에 하나의 레코드를 삽입하여 보조 인덱스를 구축했습니다. 이것은 "하향식" 접근 방식입니다. 삽입 위치에 대한 검색은 루트(위쪽)에서 시작하여 적절한 리프 페이지(아래쪽)에 도달합니다. 레코.. 2021. 8. 6.