Po pierwsze powiedziałbym, że prawdopodobnie chcesz wyłączyć trwałe połączenia, ponieważ prawie zawsze wyrządzają one więcej szkody niż pożytku.
Po drugie, powiedziałbym, że chcesz dwukrotnie sprawdzić użytkowników MySQL, aby upewnić się, że nikt nie może połączyć się ze zdalnego serwera. Jest to również ważny element bezpieczeństwa, który należy sprawdzić.
Po trzecie, powiedziałbym, że chcesz włączyć Powolne zapytanie MySQL Zaloguj się, aby mieć oko na wszelkie zapytania, które zajmują dużo czasu, i użyj tego, aby upewnić się, że żadne zapytania nie blokują zbyt długo tabel kluczy.
Inne rzeczy, które możesz sprawdzić, to uruchomienie następującego zapytania, gdy obciążenie procesora jest duże:
SHOW PROCESSLIST;
Spowoduje to wyświetlenie wszystkich zapytań, które są aktualnie uruchomione lub w kolejce do uruchomienia, jakie jest zapytanie i co robi (to polecenie skróci zapytanie, jeśli jest zbyt długie, możesz użyć SHOW FULL PROCESSLIST, aby zobaczyć pełny tekst zapytania) .
Będziesz także chciał mieć oko na takie rzeczy, jak rozmiary buforów, pamięć podręczna tabel , pamięć podręczna zapytań i innodb_buffer_pool_size (jeśli używasz tabel innodb), ponieważ wszystkie te alokacje pamięci mogą mieć wpływ na wydajność zapytań, co może spowodować, że MySQL będzie zużywał procesor.
Prawdopodobnie zechcesz również przeczytać poniższe, ponieważ zawierają one dobre informacje.
Bardzo dobrym pomysłem jest również użycie profilera. Coś, co możesz włączyć, kiedy chcesz, co pokaże Ci, jakie zapytania są uruchomione w Twojej aplikacji, czy występują zduplikowane zapytania, jak długo trwają itp. Przykładem czegoś takiego jest ten, nad którym pracowałem Profil PHP ale jest ich wiele. Jeśli używasz oprogramowania takiego jak Drupal, Joomla lub Wordpress, będziesz chciał zapytać społeczność, ponieważ prawdopodobnie dostępne są dla nich moduły, które pozwalają uzyskać te informacje bez konieczności ręcznej integracji czegokolwiek.