Merhaba,
Öncelikle belirtmeliyimki uzun yıllardır geliştirdiğim tüm projelerimde veri tabanı olarak MySQL kullansamda sadece veri kaydetme, çekme vs işlemlerden öte kullanmadım.
Fakat yaşın ilerlemesi ve geliştirilen projelerin büyümesi ile haliyle verilerde birikmeye başladı. Sonuç olarak "MySQL'in nimetlerinden faydalanmam gerekiyor"a geldi sonuç.
Şuan geliştirdiğim projede veritabanında yaklaşık 5k ürün ve detyalı tüm bilgileri ve dolayısıyla müşteri bilgileri vs. tutulmakta. Hal ve durum böyleyken Select sorguları oldukça zaman alıcı hale gelmeye başladı. Ayrıca verilerde her geçen gün artıyor.
Bir çok araştırma yapsamda bilgileri kaybetme korkusunu yenip bişeyler yapamadım. Indexler oluşturayım dedim ama bu oluşturacağım indexler ne işe yarayacak anlamadım. Tablo birleştirme sorguları neredeyse ölüm gibi olmaya başladı. Performansı arttırmak için nereden başlamalıyım dedim bişeyler bulamadım eğer bildiğiniz makale veya tavsiye edeceğiniz bilgiler varsa yardımcı olmanızı rica ederim.
Şimdiden hepinize çok teşekkürler.
MySQL Indexleme ve Performans Arttırma
2
●1.737
- 02-05-2014, 21:10:23Size basit bir mantık anlatabilirim;
klasik id lere verdiğimiz index dışında,
mesela ***** WHERE sehirid=7 and ilceid=23
gibi kullandığınız tüm sql cümleleleri için, where içinde AND li olan sütunlara indeks verirseniz, oldukça hızınız artar
yukardaki örnek de yapılması gereken;
ALTER TABLE tabloadi ADD UNIQUE ( `ilid` , `ilceid` )
kullanıdığınız her WHERE içindeki AND li olan sütunlara bunu yapmanız önerilir.