Öncelikle kalıcı bağlantıları kapatmak istediğinizi söyleyebilirim, çünkü neredeyse her zaman yarardan daha fazla zarar verirler.
İkincisi, MySQL kullanıcılarınızı iki kez kontrol etmek istediğinizi söyleyebilirim, sadece uzak bir sunucudan kimsenin bağlantı kurmasının mümkün olmadığından emin olmak için. Bu da kontrol edilmesi gereken önemli bir güvenlik şeyidir.
Üçüncüsü , uzun süren sorgulara göz atmak için MySQL Yavaş Sorgu Günlüğünü açmak istediğinizi ve anahtar tabloları çok uzun süre kilitleyen sorguların olmadığından emin olmak için bunu kullanmak istediğinizi söyleyebilirim .
Kontrol edebileceğiniz diğer bazı şeyler, CPU yükü yüksekken aşağıdaki sorguyu çalıştırmak olacaktır:
SHOW PROCESSLIST;
Bu, o anda çalışmakta olan sorguları veya çalıştırılacak kuyrukları, sorgunun ne olduğunu ve ne yaptığını gösterir (bu komut çok uzunsa sorguyu keser, tam sorgu metnini görmek için TAM İŞLEMİ GÖSTER seçeneğini kullanabilirsiniz) .
Ayrıca, arabellek boyutlarınız, tablo önbelleğiniz , sorgu önbelleğiniz ve innodb_buffer_pool_size (innodb tabloları kullanıyorsanız) gibi tüm bellek ayırmalarının MySQL'in CPU yemek.
Ayrıca, bazı iyi bilgiler içerdiklerinden muhtemelen aşağıdakileri de okumak isteyebilirsiniz.
Profiler kullanmak da çok iyi bir fikir. İstediğinizde açabileceğiniz bir şey, uygulamanızın hangi sorguları çalıştırdığını, yinelenen sorgular varsa, ne kadar sürdüğünü vb. Gösterecektir. Bunun gibi bir örnek üzerinde çalıştığım bir örnek PHP Profiler ama orada çok var. Drupal, Joomla veya Wordpress gibi bir yazılım parçası kullanıyorsanız, topluluk içinde sormak isteyeceksiniz, çünkü muhtemelen onlar için herhangi bir şeyi manuel olarak entegre etmenize gerek kalmadan bu bilgileri almanıza izin veren modüller vardır.