22.2.1 성능 스키마 빌드 구성
성능 스키마를 사용할 수 있도록하려면, 구축시에 MySQL 서버에 그것을 구성해야합니다. Oracle Corporation에서 제공되는 MySQL 바이너리 배포는 성능 스키마를 지원하도록 구성되어 있습니다. 다른 공급자의 MySQL 바이너리 배포판을 사용하는 경우에는 공급자에게 배포가 제대로 구성되어 있는지 확인하십시오.
소스 배포판에서 MySQL을 구축하는 경우 WITH_PERFSCHEMA_STORAGE_ENGINE
옵션을 사용하여 CMake를 실행하고 성능 스키마를 사용합니다.
shell> cmake . -DWITH_PERFSCHEMA_STORAGE_ENGINE=1
-DWITHOUT_PERFSCHEMA_STORAGE_ENGINE=1
옵션을 사용하여 MySQL을 구성하면 성능 스키마가 포함되지 않기 때문에, 그것을 포함하려면이 옵션을 사용하지 마십시오. 섹션 2.9.4 "MySQL 소스 구성 옵션" 을 참조하십시오.
성능 스키마없이 (또는 현재의 모든 테이블을 포함하지 않을 수있는 이전 버전의 성능 스키마)로 구성된 이전 설치에 MySQL을 설치하려면 서버를 시작한 후 mysql_upgrade를 실행하여 모든 현재 테이블을 사용하여 performance_schema
데이터베이스가 존재하도록하십시오. 그런 다음 서버를 다시 시작합니다. 이렇게해야한다는 하나의 징후는 오류 로그에 다음과 같은 메시지가 존재하는 것입니다.
[ERROR] Native table 'performance_schema'.'events_waits_history' has the wrong structure [ERROR] Native table 'performance_schema'.'events_waits_history_long' has the wrong structure ...
서버 성능 스키마 지원이 포함되어 있는지 여부를 확인하려면 해당 도움말 출력을 확인합니다. 성능 스키마를 사용할 수있는 경우 출력에 performance_schema
로 시작하는 이름을 가진 여러 변수가 표시됩니다.
shell> mysqld --verbose --help
...
--performance_schema
Enable the performance schema.
--performance_schema_events_waits_history_long_size=#
Number of rows in events_waits_history_long.
...
서버에 연결하고 SHOW ENGINES
에서 출력 PERFORMANCE_SCHEMA
스토리지 엔진의 이름이 거론 된 행을 찾을 수도 있습니다.
mysql> SHOW ENGINES\G
...
Engine: PERFORMANCE_SCHEMA
Support: YES
Comment: Performance Schema
Transactions: NO
XA: NO
Savepoints: NO
...
구축시 서버 성능 스키마가 구성되어 있지 않은 경우, SHOW ENGINES
의 출력에 PERFORMANCE_SCHEMA
줄이 표시되지 않습니다. SHOW DATABASES
의 출력에 performance_schema
가 표시된 수 있지만, 거기에는 테이블이없고, 그것을 사용 할 수 없습니다.
SHOW ENGINES
출력 PERFORMANCE_SCHEMA
줄은 성능 스키마를 사용할 수 있음을 의미하고 그것이 사용되는 것을 의미하는 것은 아닙니다. 그것을 사용하려면 다음 섹션에서 설명하도록 서버를 시작할 때 그렇게해야합니다.