Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Nadmierna aktywność MySQL

W tym artykule omówimy wpływ nadmiernej aktywności MySQL oraz to, jak może to negatywnie wpłynąć na ogólne wykorzystanie zasobów Twojego konta. MySQL to zaplecze bazy danych wielu popularnych aplikacji internetowych i to tam te aplikacje przechowują swoje dane, aby później mogły zostać odzyskane przez skrypty po stronie serwera w celu pobrania tych informacji na Twoje strony.

Jeśli zdarzyło Ci się otrzymać powiadomienie z naszego działu administracji systemu dotyczące nadmiernej aktywności MySQL pochodzącej z Twojego konta, to najprawdopodobniej oznacza to, że poziom aktywności, który obserwowali, przekroczył możliwości platformy hostingowej, na której aktualnie znajduje się Twoje konto.

Częste przyczyny nadmiernej aktywności MySQL

Długie działające zapytania Typowe zapytanie SQL powinno być w stanie zakończyć się w ciągu 1 sekundy do najwyżej kilku sekund. Posiadanie długo działających zapytań, które konsekwentnie przekraczają te czasy zapytań, może prowadzić do opóźnień w obsłudze innych zapytań na serwerze.
Wysoka liczba zapytań na sekundę Zazwyczaj zapytania SQL będą pojawiać się małymi falami wprost proporcjonalnie do ruchu, a jeśli Twoje skrypty wymagają dużej liczby zapytań SQL na wczytanie strony, potencjalnie możesz mieć dużą ich liczbę zapytań SQL na sekundę, co może mieć negatywny wpływ na wydajność zapytań serwera i zacząć prowadzić do długotrwałych zapytań.
Duże zapytania niezoptymalizowane Niektóre zapytania SQL będą z natury bardzo złożone, zwłaszcza te, które łączą ze sobą wiele tabel danych przed wykonaniem operacji na tych danych. Zapewnienie, że Twoje zapytania SQL są wydajne i pobierają tylko dane, które faktycznie muszą wyświetlić, może pomóc powstrzymać te nieefektywne zapytania przed powodowaniem długich zapytań lub dużej liczby zapytań na sekundę.
Stałe połączenia Większość zapytań SQL po prostu otworzy połączenie z bazą danych, pobierze dane, a następnie zamknie połączenie z bazą danych. MySQL obsługuje również trwałe połączenia, w których połączenie jest utrzymywane nawet po pobraniu danych. Czasami może to być problematyczne, szczególnie w przypadku hostingu współdzielonego, w którym można napotkać maks _user_connections limit ustawiony w MySQL.

W większości przypadków, jeśli Twoja aktywność MySQL jest nadmierna, nasz dział administracji systemu skontaktuje się z Tobą z ogólnym wyjaśnieniem, skąd ta aktywność wydaje się pochodzić.

Optymalizacja użycia MySQL

Dobrym pierwszym krokiem do optymalizacji bazy danych MySQL jest użycie phpMyAdmina do optymalizacji bazy danych.

Czasami Twoja normalna aktywność MySQL może być całkowicie w porządku, ale gdy roboty zaczną indeksować Twoją witrynę, może to uwydatnić nieefektywność Twojej aplikacji, więc dobrą informacją byłaby również wiedza, jak powstrzymać wyszukiwarki i roboty przed indeksowaniem Twojej witryny.

Na koniec warto również przyjrzeć się opcjom buforowania SQL dostępnym w Twojej aplikacji. Na przykład, jeśli Twoja strona główna wymaga 2 zapytań SQL, aby wyświetlić wszystkie informacje na tej stronie, a na tę stronę wchodzi 100 osób, będzie to 200 zapytań i nie będzie to za każdym razem zwracać żadnych unikalnych danych, tylko te same rzeczy.

Wdrożenie buforowania SQL może pomóc w zmniejszeniu liczby zduplikowanych zapytań do bazy danych, na przykład tego typu buforowania można przeczytać o optymalizacji WordPress za pomocą wtyczki W3 Total Cache.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. WSTAW z WYBIERZ

  2. Jak połączyć się z MySQL za pomocą Pythona

  3. SQL Buddy — internetowe narzędzie administracyjne MySQL

  4. BŁĄD 1130 (HY000):Host „” nie może połączyć się z tym serwerem MySQL

  5. Przykłady relacji wiele-do-wielu