Ta strona jest oryginalną dokumentacją PmaControl. Zachowuje praktyczną strukturę indeksu do pracy nad optymalizacją MySQL, bez kopiowania treści zewnętrznych i bez zależności od zewnętrznego produktu.
Cel
Strojenie MySQL zmniejsza latencję, stabilizuje przepustowość i zapobiega powtarzającym się saturacjom. Praca musi zaczynać się od realnych pomiarów, a nie od ogólnych wartości kopiowanych między serwerami.
Zalecana kolejność pracy
- Zbierz realne obciążenie: QPS, latencję, błędy, połączenia, I/O dysku, pamięć i CPU.
- Wskaż dominujące zapytania przez
performance_schema, slow log albo narzędzie digest. - Sprawdź schemat: brakujące indeksy, indeksy nadmiarowe, zbyt szerokie typy i tabele bez klucza głównego.
- Dostosuj InnoDB: buffer pool, redo log, flush, wątki I/O i strategię trwałości.
- Przejrzyj limity serwera: połączenia, otwarte pliki, cache tabel i rozmiary tabel tymczasowych.
- Testuj w kontrolowanym oknie, z opisanym rollbackiem.
Przydatne komendy
SHOW GLOBAL STATUS LIKE 'Threads_connected';
SHOW GLOBAL STATUS LIKE 'Questions';
SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_reads';
SHOW VARIABLES LIKE 'innodb_buffer_pool_size';
Najważniejsze
Dobre strojenie MySQL jest inkrementalne. Zmienna zmieniona bez pomiaru przed i po staje się długiem operacyjnym.