V tomto tutoriálu vám ukážeme, jak povolit protokol pomalých dotazů pro MySQL na systémech Linux. MySQL má vestavěnou funkci, která vám umožňuje protokolovat dotazy SQL do souboru. povolit úplné protokoly SQL dotazů do souboru nebo pouze pomalu běžící protokol dotazů. Je pro nás snadné odstraňovat/ ladit SQL příkaz, pokud je povolen protokol SQL dotazů, protokol pomalých dotazů se používá k nalezení dotazů, jejichž provedení trvá dlouho a jsou tedy kandidáty na optimalizaci. Předpokládáme, že již máte MySQL nainstalovanou v systému Linux s administrátorskými právy a předpokládáme, že již máte malé množství znalostí o MySQL.
Tento článek předpokládá, že máte alespoň základní znalosti Linuxu, víte, jak používat shell, a co je nejdůležitější, hostujete svůj web na vlastním VPS. Instalace je poměrně jednoduchá a předpokládá, že běží v účtu root, pokud ne, možná budete muset přidat 'sudo
‘ k příkazům pro získání oprávnění root. Ukážu vám krok za krokem povolení pomalého protokolu dotazů pro MySQL.
Předpoklady
- Server s jedním z následujících operačních systémů:CentOS Linux.
- Abyste předešli případným problémům, doporučujeme použít novou instalaci operačního systému.
- Přístup SSH k serveru (nebo stačí otevřít Terminál, pokud jste na počítači).
non-root sudo user
nebo přístup kroot user
. Doporučujeme jednat jakonon-root sudo user
, protože však můžete poškodit svůj systém, pokud nebudete při jednání jako root opatrní.
Povolit protokol pomalého dotazování pro MySQL
Krok 1. Nejprve začněme tím, že zajistíme, aby byl váš systém aktuální.
sudo dnf clean all sudo dnf update
Krok 2. Nakonfigurujte server MySQL.
Nyní upravujeme soubor /etc/my.cnf
soubor pomocí vašeho oblíbeného textového editoru.
nano /etc/my.cnf
Jakmile budete mít my.cnf
otevřete soubor, přidejte následující řádek pod „[mysqld]
“.
[mysqld] log-slow-queries log-slow-queries= /var/log/mysql/slow-queries.log long_query_time=5
Uložte a zavřete soubor a poté vytvořte soubor slow-queries.log. Soubor můžete mít na libovolném místě, pokud určíte cestu ve vašem my.cnf
.
touch /var/log/mysql/slow-queries.log chown mysql.mysql /var/log/mysql/slow-queries.log
Nakonec restartujte službu MySQL. Zadejte následující příkaz:
sudo systemctl restart mysql
Krok 3. Ověřte Slow Log Query.
Po úspěšné konfiguraci. Zkontrolujte „slow_query_log
” parametr (měl by být “ON”):
mysql> show variables like '%slow%'; +---------------------+--------------------------------+ | Variable_name | Value | +---------------------+--------------------------------+ | log_slow_queries | ON | | slow_launch_time | 2 | | slow_query_log | ON | | slow_query_log_file | /var/lib/mysql/mysqld-slow.log | +---------------------+--------------------------------+ 4 rows in set (0.00 sec)
Dále zkontrolujeme parametr „long_query_time
“, měl by mít čas 5 sekund:
mysql> show variables like '%long%'; +--------------------+----------+ | Variable_name | Value | +--------------------+----------+ | long_query_time | 5.000000 | | max_long_data_size | 1048576 | +--------------------+----------+ 2 rows in set (0.00 sec)
Blahopřejeme! Úspěšně jste povolili protokol pomalého dotazu na MySQL. Děkujeme, že jste použili tento návod k povolení pomalého protokolu dotazů na MySQL v systému Linux. Pro další pomoc nebo užitečné informace doporučujeme podívejte se na oficiální web MySQL.