프로덕션 Firebird 데이터베이스에서 느린 SELECT 문을 추적하는 방법
Firebird SQL은 TraceAPI 플러그인이라는 메커니즘을 통해 느린 SQL 쿼리 및 기타 성능 문제를 추적할 수 있는 매우 적합한 수단을 제공합니다. HQbird(대용량 데이터베이스를 위한 고급 Firebird 배포판)에는 TraceAPI를 구현하고 Firebird의 모든 성능 문제를 추적할 수 있는 쉬운 GUI 인터페이스를 제공하는 도구 FBPerfMon이 포함되어 있습니다.
프로덕션 Firebird 데이터베이스에서 가장 느린 SELECT SQL 문을 찾으려면 다음 지침을 사용하십시오:
- HQbird 다운로드 정보를 요청하십시오. (빠른 점검에는 평가판으로 충분합니다). 다운로드 정보는 이메일로 발송됩니다.
- 서버(Windows 또는 Linux)에 HQbird ServerSide를 다운로드하여 설치하고 Windows 컴퓨터에는 HQbird Admin을 설치하십시오. Windows에서 HQbird ServerSide 설치 프로그램은 필요한 Trace API 플러그인을 자동으로 설치합니다(Firebird 2.5 또는 3.0, 32비트 또는 64비트용). Linux에서는 Firebird/plugin 폴더로 수동 복사가 필요합니다. 표준 플러그인(fbtrace.dll/fbtrace.so)을 제거하고 새 플러그인을 활성화하려면 Firebird를 다시 시작하십시오.
- Windows 시작 메뉴에서 HQbird PerfMon Settings를 시작하십시오: IBSurgeon/HQbird Firebird Admin/FBPerfMon Settings.
- 추적할 데이터베이스를 선택하고 추가하십시오. 응용 프로그램에서 사용하는 것과 정확히 동일한 연결 문자열을 지정하십시오. 별칭을 사용하는 경우 별칭을 지정하고, 전체 연결 문자열을 사용하는 경우 전체 경로를 지정하십시오.
- 데이터베이스에 대한 추적 세션을 추가하십시오
- 로그 데이터베이스를 생성하십시오(추적 결과를 저장할 위치)
- 추적할 매개변수를 지정하십시오(처음에는 기본 구성을 사용하고 나중에 변경할 수 있습니다. 예를 들어 SQL 계획 로깅을 활성화할 수 있습니다)
- 추적 세션을 시작하십시오. 성공적으로 시작하면 알림이 표시되고 모든 SQL 쿼리 및 관련 정보가 로그 데이터베이스에 기록됩니다. 추적은 모든 연결의 데이터를 캡처하므로 로그가 빠르게 커질 수 있음을 기억하십시오.
- 잠시 기다린 후(문제가 있는 쿼리를 캡처하기에 충분한 시간, 일반적으로 15-20분) 추적 세션을 중지하십시오.
- HQbird PerfMon Viewer를 시작하고(Windows 시작 메뉴에서) 목록에서 최근 추적 세션에 사용된 로그 데이터베이스를 선택하십시오(또는 “기존 데이터베이스 열기” 사용).
- HQbird PerfMon Viewer는 서버 부하 그래프로 시작됩니다. 문을 보려면 « Details»를 클릭한 다음 “Statements” 탭에서 모든 SQL 쿼리를 “Total Time"별로 정렬하십시오.
- “Copy SQL text” 버튼으로 느린 SQL 쿼리 텍스트를 복사하십시오.

자세한 내용과 상세한 설명은 HQbird 사용자 가이드, 섹션 4.3. Trace API를 사용한 모니터링: HQbird FBPerfMon, 64페이지부터를 참조하십시오.