sql >> Databasteknik >  >> RDS >> Mysql

MySQL hög CPU-användning

Först vill jag säga att du förmodligen vill stänga av beständiga anslutningar eftersom de nästan alltid gör mer skada än nytta.

För det andra skulle jag säga att du vill dubbelkolla dina MySQL-användare, bara för att se till att det inte är möjligt för någon att ansluta från en fjärrserver. Detta är också en viktig säkerhetssak att kontrollera.

För det tredje skulle jag säga att du vill aktivera MySQL Slow Query Logga för att hålla ett öga på alla frågor som tar lång tid, och använd det för att se till att du inte har några frågor som låser nyckeltabeller för länge.

Några andra saker du kan kontrollera är att köra följande fråga medan CPU-belastningen är hög:

SHOW PROCESSLIST;

Detta kommer att visa dig alla frågor som körs för närvarande eller i kön för att köras, vad frågan är och vad den gör (det här kommandot kommer att trunkera frågan om den är för lång, du kan använda VISA HELA PROCESSLISTA för att se hela frågetexten) .

Du vill också hålla ett öga på saker som dina buffertstorlekar, tabellcache , query cache och innodb_buffer_pool_size (om du använder innodb-tabeller) eftersom alla dessa minnesallokeringar kan påverka frågeprestanda vilket kan få MySQL att äta upp CPU.

Du kommer förmodligen också att vilja läsa igenom följande eftersom de innehåller bra information.

Det är också en mycket bra idé att använda en profilerare. Något du kan aktivera när du vill som kommer att visa dig vilka frågor din applikation kör, om det finns dubbletter av frågor, hur lång tid de tar, etc, etc. Ett exempel på något sådant här är en som jag har arbetat med som heter PHP-profiler men det finns många där ute. Om du använder en mjukvara som Drupal, Joomla eller Wordpress vill du fråga runt inom communityn eftersom det förmodligen finns moduler tillgängliga för dem som låter dig få den här informationen utan att behöva integrera något manuellt.



  1. Konvertera Select-resultat till Insert script - SQL Server

  2. Hur man skapar användare i PostgreSQL

  3. Vad är vårintegration?

  4. Hur man exporterar frågeresultat till en .txt-fil när du använder SQLcl (Oracle)