İş yükünün profilinin çıkartılmasından indekslemenin üç kuralına burada yer alan uzman görüşleri hiç şüphesiz MySQL sunucularınızı coşturacak.
Tüm ilişkisel veritabanlarında olduğu gibi, MySQL de karmaşık bir canavar olduğunu ispat edebilir; bir anda uygulamalarınızı ve online işinizi zor durumda bırakan bir probleme neden olabilir.
İşin gerçeği şu ki, yaygın hatalar çoğunlukla MySQL performans problemleri altında yatıyor. MySQL sunucunuzun en yüksek hızda çalışmasını, istikrarlı ve kesintisiz bir performans temin etmek için sıklıkla anlaşılması güç olan bu hataları ortadan kaldırmak önem arz ediyor.
Çok şükür çoğu MySQL performans problemi benzer çözümlere sahip. Bu da sorunların çözümü ve MySQL’in hassas bir biçimde ayarlanmasını yönetilebilir bir görev yapıyor.
İşte size MySQL’den en iyi performansı elde etmeniz için 10 ipucu.
MySQL performans ipuçları No. 1: İş yükünüzün profilini çıkartın
Sunucunuzun zamanını nasıl harcadığını anlamanın en iyi yolu sunucunuzun iş yükünün profilini çıkartmaktır. İş yükünün profilini çıkartarak daha hassas ayar yapmak üzere en yoğun sorguları açığa çıkartabilirsiniz. Burada zaman önemli bir ölçüttür çünkü sunucu karşısında bir sorgu yayınladığınızda, ne kadar hızlı sonuçlandığı dışında hemen her şeye çok az dikkat edersiniz.
İş yükünün profilini çıkartmanın en iyi yolu MySQL Enterprise Monitor’un sorgu analizcisi veya Percona Toolkit’in pt-query-digest’i gibi bir araçtır. Bu araçlar sunucunun çalıştırdığı sorguları yakalar ve yanıt zamanına göre azalan sırada sınıflandırılmış bir tablo getirir. En yoğun ve zaman harcayan görevleri listesinin başına getirir ki çabalarınızı nereye odaklamanız gerektiğini görebileseniz.
İş yükü profili çıkarma araçları benzer sorguları tek bir sıra içinde gruplar. Böylelikle yavaş çalışan sorguları görmenize imkan tanır. Aynı zamanda hızlı çalışan ancak çok kez çalıştırılan sorguları da bu şekilde görebilirsiniz.
MySQL performans ipuçları No. 2: Dört temel kaynağınızı anlayın
İşlevini yerine getirebilmesi için bir veritabanı sunucusu dört temel kaynağa gereksinim duyar: CPU, bellek, disk ve ağ. Eğer bunlardan biri zayıf ise veyahut aşırı yüklenmişse o zaman veritabanı sunucusunun kötü bir performans göstermesi çok olasıdır.
Temel kaynakları anlamak özellikle iki alan için önemlidir: donanımın seçimi ve problemlerin giderilmesi.
MySQL için donanım seçerken, tüm bileşenlerin iyi bir performansa sahip olduğundan emin olun. Bunların birbirleri karşısında makul bir biçimde dengelenmesi de aynı derecede önemli. Genellikle organizasyonlar hızlı CPU’ları ve diskleri olan sunucuları seçer ama belleği mahrum bırakır. Bazı durumlarda bellek eklemek performansı basamaksal büyüklük olarak arttırmanın en ucuz yoludur; özelikle diskle bağlantılı iş yüklerinde. Bu mantığa aykırı gibi gözükebilir ama çoğu durumda diskler aşırı kullanılır çünkü sunucunun çalıştırdığı veri setlerini saklamaya yeterli bellek yoktur.