Domanda

"Microsoft SQL Server Profiler è un'interfaccia utente grafica per SQL Trace per il monitoraggio di un'istanza del Motore di database o di Analysis Services."

Trovo che l'utilizzo di SQL Server Profiler sia estremamente utile durante lo sviluppo, i test e quando eseguo il debug dei problemi dell'applicazione del database.Qualcuno sa se esiste un programma equivalente per MySql?

È stato utile?

Soluzione

C'è qualcosa di interessante nella versione 5.0.37 del server della comunità Il nuovo profiler di MySQL.

Questo potrebbe darti le informazioni che stai cercando.

Altri suggerimenti

Desideri monitorare le prestazioni o semplicemente vedere quali query sono in esecuzione?In quest'ultimo caso, puoi configurare MySQL per registrare tutte le query fornite.Su una macchina RedHat Linux, potresti aggiungere

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

alla sezione [mysqld] di /etc/my.cnf prima di riavviare MySQL.

Ricordare che in uno scenario di database occupato, tali registri possono diventare piuttosto grandi.

Prova JET profiler è uno strumento di diagnostica e prestazioni delle query in tempo reale!Lo uso nel mio lavoro.Software e supporto eccellenti.Recensione Jet Profiler per MySQL

Secondo me qui ho trovato tutto in raw....

Trova e apri il file di configurazione MySQL, solitamente /etc/mysql/my.cnf su Ubuntu.Cerca la sezione che dice "Registrazione e replica"

# * 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

o nelle versioni più recenti di mysql, commenta queste righe di codice

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

Basta decommentare la variabile "log" per attivare la registrazione.Riavvia MySQL con questo comando:sudo /etc/init.d/mysql riavviare

Ora siamo pronti per iniziare a monitorare le query man mano che arrivano.Apri un nuovo terminale ed esegui questo comando per scorrere il file di registro, regolando il percorso se necessario.

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

Jet Profiler è buono se è una versione a pagamento.Il LogMonitor lo punta semplicemente al file di registro mysql.

Non sono sicuro dell'interfaccia utente grafica, ma esiste un comando che mi ha aiutato molto a profilare le procedure memorizzate in MySQL utilizzando il workbench:

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

Se la versione 5.0.37 non è disponibile, potresti volerla dare un'occhiata mytop.Fornisce semplicemente lo stato corrente del server, ma consente di eseguire EXPLAIN as (menzionato da mercutio) su query particolari.

Usare Neor Profiler SQL è eccellente!!e l'applicazione è gratuita per tutti gli utenti. http://www.profilesql.com/download/enter image description here

Non conosco app di profilazione in quanto tali, ma è normale utilizzare la sintassi EXPLAIN per analizzare le query.Puoi utilizzarli per individuare gli indici migliori da creare oppure puoi provare a modificare la query complessiva e vedere come cambia l'efficienza, ecc.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top