Loading...
MySQL 9.5 Reference Manual 9.5의 29.3 Performance Schema Startup Configuration의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
MySQL Performance Schema를 사용하려면, 이벤트 수집이 발생할 수 있도록 서버 시작 시에 이를 활성화해야 합니다.
Performance Schema는 기본적으로 활성화되어 있습니다. 이를 명시적으로 활성화하거나 비활성화하려면, 서버를 시작할 때 performance_schema 변수를 적절한 값으로 설정하십시오. 예를 들어, 서버 my.cnf 파일에 다음과 같은 줄을 사용합니다:
1[mysqld] 2performance_schema=ON
서버가 Performance Schema 초기화 중에 어떤 내부 버퍼도 할당할 수 없으면, Performance Schema는 스스로를 비활성화하고 performance_schema를 OFF로 설정하며, 서버는 계측 없이 동작합니다.
Performance Schema는 또한 서버 시작 시에 계측기 및 컨슈머 설정을 허용합니다.
서버 시작 시에 계측기를 제어하려면, 다음 형식의 옵션을 사용합니다:
1--performance-schema-instrument='instrument_name=value'
여기서 instrument_name 은 wait/synch/mutex/sql/LOCK_open과 같은 계측기 이름이고, value 는 다음 값 중 하나입니다:
OFF, FALSE, 또는
0: 계측기 비활성화
ON, TRUE, 또는
1: 계측기를 활성화하고 시간 측정
COUNTED: 계측기를 활성화하고 (시간 측정 대신) 카운트
각 --performance-schema-instrument 옵션은 하나의 계측기 이름만 지정할 수 있지만, 여러 계측기를 설정하려면 옵션의 여러 인스턴스를 사용할 수 있습니다. 추가로, 계측기 이름에 패턴을 허용하여, 패턴과 일치하는 계측기들을 설정할 수 있습니다. 모든 조건 동기화 계측기를 활성화하고 카운트되도록 설정하려면, 이 옵션을 사용합니다:
1--performance-schema-instrument='wait/synch/cond/%=COUNTED'
모든 계측기를 비활성화하려면, 이 옵션을 사용합니다:
1--performance-schema-instrument='%=OFF'
예외: memory/performance_schema/% 계측기는 빌트인이며 시작 시 비활성화할 수 없습니다.
더 긴 계측기 이름 문자열은 순서와 무관하게 더 짧은 패턴 이름보다 우선합니다. 계측기를 선택하기 위한 패턴 지정에 대한 정보는 Section 29.4.9, “Naming Instruments or Consumers for Filtering Operations”를 참조하십시오.
인식되지 않는 계측기 이름은 무시됩니다. 나중에 설치된 플러그인이 그 계측기를 생성할 수 있으며, 그 시점에 이름이 인식되고 설정됩니다.
서버 시작 시에 컨슈머를 제어하려면, 다음 형식의 옵션을 사용합니다:
1--performance-schema-consumer-consumer_name=value
여기서 consumer_name 은 events_waits_history와 같은 컨슈머 이름이고, value 는 다음 값 중 하나입니다:
OFF, FALSE, 또는
0: 해당 컨슈머에 대해 이벤트를 수집하지 않음
ON, TRUE, 또는
1: 해당 컨슈머에 대해 이벤트를 수집함
예를 들어, events_waits_history 컨슈머를 활성화하려면 다음 옵션을 사용합니다:
1--performance-schema-consumer-events-waits-history=ON
허용되는 컨슈머 이름은 setup_consumers 테이블을 검사하여 찾을 수 있습니다. 패턴은 허용되지 않습니다. setup_consumers 테이블의 컨슈머 이름은 언더스코어를 사용하지만, 시작 시 설정되는 컨슈머의 경우 이름 안의 대시와 언더스코어는 동등하게 취급됩니다.
Performance Schema에는 구성 정보를 제공하는 여러 시스템 변수가 포함되어 있습니다:
1mysql> SHOW VARIABLES LIKE 'perf%'; 2+--------------------------------------------------------+---------+ 3| Variable_name | Value | 4+--------------------------------------------------------+---------+ 5| performance_schema | ON | 6| performance_schema_accounts_size | 100 | 7| performance_schema_digests_size | 200 | 8| performance_schema_events_stages_history_long_size | 10000 | 9| performance_schema_events_stages_history_size | 10 | 10| performance_schema_events_statements_history_long_size | 10000 | 11| performance_schema_events_statements_history_size | 10 | 12| performance_schema_events_waits_history_long_size | 10000 | 13| performance_schema_events_waits_history_size | 10 | 14| performance_schema_hosts_size | 100 | 15| performance_schema_max_cond_classes | 80 | 16| performance_schema_max_cond_instances | 1000 | 17...
performance_schema 변수는 Performance Schema가 활성화 또는 비활성화되었는지를 나타내기 위해 ON 또는 OFF입니다. 다른 변수들은 테이블 크기(행 수) 또는 메모리 할당 값을 나타냅니다.
참고
Performance Schema가 활성화된 경우, Performance Schema 인스턴스의 수는 서버 메모리 풋프린트에, 아마도 상당한 정도로, 영향을 미칩니다. Performance Schema는 많은 파라미터를 자동으로 스케일하여 필요한 만큼만 메모리를 사용합니다. 자세한 내용은 Section 29.17, “The Performance Schema Memory-Allocation Model”을 참조하십시오.
Performance Schema 시스템 변수의 값을 변경하려면, 서버 시작 시에 이를 설정하십시오. 예를 들어, 대기 이벤트에 대한 히스토리 테이블 크기를 변경하려면 my.cnf 파일에 다음 줄을 넣습니다:
1[mysqld] 2performance_schema 3performance_schema_events_waits_history_size=20 4performance_schema_events_waits_history_long_size=15000
Performance Schema는 시작 시에 명시적으로 설정되지 않은 여러 파라미터의 값을 자동으로 결정합니다. 예를 들어, 이벤트 대기 테이블의 크기를 제어하는 파라미터를 이런 방식으로 결정합니다. Performance Schema는 서버 시작 동안 필요한 모든 메모리를 한 번에 할당하는 대신, 실제 서버 부하에 맞추어 메모리 사용량을 스케일하기 위해 메모리를 점진적으로 할당합니다.
그 결과, 많은 크기 관련 파라미터는 전혀 설정할 필요가 없습니다. 어떤 파라미터가 자동 크기 조정 또는 자동 스케일링되는지 보려면, mysqld --verbose --help를 사용하여 옵션 설명을 확인하거나, Section 29.15, “Performance Schema System Variables”를 참조하십시오.
서버 시작 시에 설정되지 않은 각 자동 크기 조정 파라미터에 대해, Performance Schema는 다음 시스템 값의 값을 기반으로 해당 값을 어떻게 설정할지 결정합니다. 이 값들은 MySQL 서버를 어떻게 설정했는지에 대한 “힌트”로 간주됩니다:
1max_connections 2open_files_limit 3table_definition_cache 4table_open_cache
특정 파라미터에 대한 자동 크기 조정 또는 자동 스케일링을 무시하려면, 시작 시에 그 값을 −1이 아닌 값으로 설정하십시오. 이 경우, Performance Schema는 지정된 값을 할당합니다.
런타임 시에, SHOW VARIABLES는 자동 크기 조정된 파라미터가 실제로 어떤 값으로 설정되었는지를 표시합니다. 자동 스케일링된 파라미터는 값이 −1로 표시됩니다.
Performance Schema가 비활성화된 경우, 자동 크기 조정 및 자동 스케일링된 파라미터는 −1로 유지되며, SHOW VARIABLES는 −1을 표시합니다.
29.2 Performance Schema Build Configuration
29.4 Performance Schema Runtime Configuration