Come abilitare il registro delle query lente sul mio server? L'ho abilitato sul mio host locale aggiungendo log-slow-queries =[path]
nel file my.ini
, ma non so come aggiungerlo sul mio server. Il mio server è basato su Linux e ha la versione 5.2.16 di PHP.Come posso abilitare il log delle query lente di MySQL sul mio server?
risposta
L'attivazione di log delle query lente non ha nulla a che fare con la versione di PHP. Devi abilitarlo nel server MySQL. È possibile attivare in due modi
- Nel runtime
- Durante il server avviare
Se il server è al di sopra 5.1.6 è possibile impostare il log delle query lente nel runtime stesso. Per il quale devi eseguire questa query.
set global log_slow_queries = 1;
set global slow_query_log_file = <some file name>;
Oppure, in alternativa, è possibile impostare le opzioni di questo in my.cnf/my.ini file di opzione
log_slow_queries = 1;
slow_query_log_file = <some file name>;
casi in cui è cambiato il file di opzione, il server MySQL devono essere riavviato.
posizione del file di opzioni di MySQL può essere trovato qui http://dev.mysql.com/doc/refman/4.1/en/mysql-config-wizard-file-location.html
FYI: log_slow_queries
è stato rimosso in MySQL 5.6.1 e slow_query_log
viene utilizzato al posto. http://dev.mysql.com/doc/refman/5.6/en/server-options.html#option_mysqld_log-slow-queries
Ma per le prestazioni è possibile impostare l'uscita del registro (opzionale log_output
) per TABLE
. Inoltre si può avere uno sguardo altre opzioni lento log delle query come long_query_time
, log-queries-not-using-indexes
È possibile impostare temporaneamente, eseguendo i seguenti comandi:
set global slow_query_log = 1;
set global slow_query_log_file = '/var/log/mysql-slow.log';
ma le modifiche verranno annullate quando MySQL viene riavviato.
È possibile impostare in modo permanente, aggiungendo quanto segue al my.cnf
del file:
slow-query-log=1
slow-query-log-file=/var/log/mysql-slow.log
La posizione my.cnf
varia a seconda del sistema operativo, ma si trova spesso in /etc/my.cnf
, o /etc/mysql/my.cnf
:
Dopo aver salvato le tue modifiche, dovrai riavviare MySql. Questo può variare a seconda del sistema operativo, ma qui ci sono alcuni esempi comuni:
sudo /etc/init.d/mysqld restart
e
sudo service mysqld restart
quando sono in esecuzione questa query ' SET GLOBAL slow_query_log = 1; 'sto ricevendo questo errore' # 1193 - Un noto variabile di sistema 'slow_query_log'' – Juice
Thanx 4 aiuto ur .. – Juice
non si arrabbiano. Dal momento che entrambe le risposte sono state di aiuto per me, ho votato entrambe. E posso accettare solo una risposta altrimenti avrei accettato anche la tua. Ho accettato la sua risposta perché ha risposto ai miei dubbi. – Juice
Prima (come root :)
mkdir /var/log/mysql
touch /var/log/mysql/log-slow-queries.log
chown mysql:mysql -R /var/log/mysql
Poi sotto [mysqld] in/etc/la mia.conf (o dovunque il file di configurazione è :)
slow_query_log = 1
log-queries-not-using-indexes
long_query_time=1
log-slow-queries=/var/log/mysql/log-slow-queries.log
successivo:
service mysql restart
Infine:
mysql
mysql> SELECT SLEEP(10);
mysql> quit
di verifica:
cat /var/log/mysql/log-slow-queries.log
/usr/sbin/mysqld, Version: 5.5.42-cll (MySQL Community Server (GPL)). started with:
Tcp port: 0 Unix socket: (null)
Time Id Command Argument
# Time: 150727 0:05:17
# [email protected]: root[root] @ localhost []
# Query_time: 10.000215 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0
SET timestamp=1437973517;
select sleep(10);
- 1. Le query lente di MYSQL nel "log delle query lente", ma le stesse query vengono eseguite molto rapidamente manualmente
- 2. Come posso avviare e controllare il mio log MySQL?
- 3. Query lente di debug di MySQL?
- 4. Abilitazione del log di query generale MySQL con JDBC
- 5. Dove posso trovare il log delle transazioni MySQL?
- 6. Abilita il log binario MySQL
- 7. Hadoop Hive query lente
- 8. Come posso ottenere un elenco completo di tutte le query attualmente in esecuzione sul mio server MySQL?
- 9. RoR: log delle query SQL nel registro di produzione
- 10. Come abilitare gli aggiornamenti di heap sul mio client Android
- 11. analizzatori di log a query lenta
- 12. mysql 5.7 log-slow-queries errore
- 13. Recupero della posizione del log di query lento MySQL via PHP
- 14. Come abilitare INNODB in mysql
- 15. Perché compare "Registrazione binaria non possibile". sul mio server MySQL?
- 16. Come abilitare Google Cloud Storage sul mio server di sviluppo locale?
- 17. Come posso abilitare il registro generale per MySQL da utilizzare con MAMP?
- 18. Come configurare il mio log Django in modo che funzioni come il log del server di sviluppo integrato?
- 19. PHP: connessioni remote MySQL molto lente
- 20. Impedire la visualizzazione di una singola query nel registro delle query lente
- 21. Mysql query lente: INNER JOIN + ORDER BY cause FileSort
- 22. Registro delle query Mysql non funzionante
- 23. MySQL spiegare Comprensione delle query
- 24. Come trovare le query più lente
- 25. Come ridurre l'utilizzo del log delle transazioni di SQL Server
- 26. Azure come abilitare i log completo WebJob
- 27. query lente durante la connessione al server collegato
- 28. Come posso abilitare in linea ManyToManyFields sul mio sito di amministrazione Django?
- 29. Che cosa significa "SELECT/*! N SQL_NO_CACHE */* FROM` mytable`" significare in nel registro query lente di MySQL?
- 30. Come posso salvare il contenuto dell'editor in linea sul server? .
quando sto eseguendo questa query 'SET GLOBAL slow_query_log = 1;' sto ricevendo questo errore '# 1193 - Variabile di sistema sconosciuta 'slow_query_log'' – Juice
sry dovrebbe essere' log_slow_queries', farò la modifica necessaria. –
eseguo anche questo comando 'set global log_slow_queries = 1;' ora mostra '# 1238 - Variabile 'log_slow_queries' è una variabile di sola lettura' – Juice