문제

"Microsoft SQL Server Profiler는 데이터베이스 엔진 또는 Analysis Services의 인스턴스를 모니터링하기 위한 SQL Trace의 그래픽 사용자 인터페이스입니다."

저는 개발, 테스트 중 그리고 데이터베이스 응용 프로그램 문제를 디버깅할 때 SQL Server Profiler를 사용하는 것이 매우 유용하다고 생각합니다.MySql과 동등한 프로그램이 있는지 아는 사람이 있습니까?

도움이 되었습니까?

해결책

커뮤니티 서버 버전 5.0.37의 멋진 점은 다음과 같습니다. MySQL의 새로운 프로파일러.

이를 통해 원하는 정보를 얻을 수 있습니다.

다른 팁

성능을 모니터링하고 싶습니까, 아니면 어떤 쿼리가 실행되고 있는지 확인하고 싶습니까?후자의 경우 제공된 모든 쿼리를 기록하도록 MySQL을 구성할 수 있습니다.RedHat Linux 상자에서는 다음을 추가할 수 있습니다.

log = /var/lib/mysql/query.log

[mysqld] 섹션으로 /etc/my.cnf MySQL을 다시 시작하기 전에.

사용량이 많은 데이터베이스 시나리오에서는 해당 로그가 상당히 커질 수 있다는 점을 기억하십시오.

JET 프로파일러를 사용해 보세요. 실시간 쿼리 성능 및 진단 도구입니다!나는 그것을 내 작업에 사용합니다.뛰어난 소프트웨어 및 지원.MySQL용 Jet Profiler 검토

제 생각에는 여기 있는 모든 것을 원본으로 찾았습니다....

MySQL 구성 파일(보통 Ubuntu에서는 /etc/mysql/my.cnf)을 찾아 엽니다."로깅 및 복제" 섹션을 찾으세요.

# * Logging and Replication
# Both location gets rotated by the cronjob.
# Be aware that this log type is a performance killer.

log = /var/log/mysql/mysql.log

또는 최신 버전의 mysql에서는 이 코드 줄을 주석 처리하세요.

general_log_file        = /var/log/mysql/mysql.log
general_log             = 1
log_error                = /var/log/mysql/error.log

로깅을 켜려면 "log" 변수의 주석 처리를 제거하세요.다음 명령으로 MySQL을 다시 시작하십시오.sudo /etc/init.d/mysql 재시작

이제 들어오는 쿼리를 모니터링할 준비가 되었습니다.새 터미널을 열고 이 명령을 실행하여 로그 파일을 스크롤하고 필요한 경우 경로를 조정합니다.

tail -f /var/log/mysql/mysql.log

Jet Profiler는 유료 버전이라면 좋습니다.LogMonitor는 단지 mysql 로그 파일을 가리키기만 합니다.

그래픽 사용자 인터페이스는 확실하지 않지만 워크벤치를 사용하여 MySQL에서 저장 프로시저를 프로파일링하는 데 도움이 되는 명령이 있습니다.

SET profiling = 1;
call your_procedure;
SHOW PROFILES;
SET profiling = 0;

버전 5.0.37을 사용할 수 없는 경우 다음을 살펴보세요. 마이톱.단순히 서버의 현재 상태를 출력하지만 특정 쿼리에 대해 (mercutio에서 언급한 대로) EXPLAIN을 실행할 수 있습니다.

Usin Neor Profiler SQL은 훌륭합니다!!이 애플리케이션은 모든 사용자에게 무료로 제공됩니다. http://www.profilesql.com/download/enter image description here

나는 그러한 프로파일링 앱에 대해 모르지만 쿼리 분석을 위해 EXPLAIN 구문을 사용하는 것이 일반적입니다.이를 사용하여 생성하기에 가장 적합한 인덱스를 파악하거나 전체 쿼리를 변경하여 효율성이 어떻게 변경되는지 확인할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top