MySQL’de Yavaş SQL Cümlelerini Loglama

Tuesday February 17th 2009, 15:13 pm |   |  Web Teknolojileri | by eser s.

Diyelim ki veritabanı sunucusu olarak MySQL kullandığınız bir web uygulamanız var. Uygulamanızı devreye aldıktan sonra veya almadan SQL cümlelerinizin performansını kontrol etmek istiyorsunuz. Veya sayfa takılıyor ve siz yavaşlığın ve takılmanın yüksek ihtimalle sql cümlelerinden birinin yavaş çalışıp geç sonuç döndürmesinden kaynaklandığını düşünüyorsunuz.

İşte bu tip durumlarda hangi sql cümlelerinin yavaş olduğunu bulmak için MySQL’in ayar dosyası olan my.cnf dosyasında iki güzel ayar var. Ancak bu ayarlar default olarak kapalı geliyor. O yüzden daha önce bu ayarlara ellemediyseniz bu satırların başında bulunan # karakterini silerek bu ayarları etkinleştirmeniz gerekiyor.

  1.  
  2.       log_slow_queries = /var/log/mysql/mysql-slow-queries.log
  3.       long_query_time = 5
  4.  

Yukarıda gördüğünüz ayarlardan log_slow_queries ayarı bu sql cümlelerinin log’lanacağı log dosyasının dizin yolu ve dosya adını verdiğimiz ayar. İkinci ayar olan long_query_time ayarı da sql cümlesinin çalışması şu kadar saniyeden fazla sürüyorsa bu sql cümlesini log’a yaz demek.

Bu ayarları my.cnf dosyasında yapıp kaydettikten sonra, MySQL’i kapatıp tekrar açmanız lazım.
MySQL tekrar başladıktan sonra artık yukarıda verdiğimiz log dosyasına bakarak yavaş çalışan sql cümlelerini görebilir ve gerekli optimizasyonları yapabiliriz.

Birilerinin işine yarar umarım :)


Comments
No Comments   |    |  Comments RSS on this post.  |  
No comments yet.

Sorry, the comment form is closed at this time.

 
SHATO Web Hosting Services