• 26-10-2010, 19:45:01
    #1
    SELECT COUNT(*) as KarakterSayi  
      FROM player.player 
      LEFT JOIN player.player_index 
      ON player_index.id=player.account_id 
      LEFT JOIN player.guild_member 
      ON guild_member.pid=player.id 
      LEFT JOIN player.guild 
      ON guild.id=guild_member.guild_id
      INNER JOIN account.account 
      ON account.id=player.account_id
      WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK'
      ORDER BY player.level DESC, player.exp DESC
    Yukaridaki sorgu ile veritabanındaki karakterlerin toplam sayısını alıyorum ve kaç sayfaya ayırıcağımı hesapliyorum

    Veritabanındaki toplam kullanıcı sayısı: 286281

    SELECT player.id,player.name,player.level,player.exp,player_index.empire,guild.name AS guild_name 
      FROM player.player 
      LEFT JOIN player.player_index 
      ON player_index.id=player.account_id 
      LEFT JOIN player.guild_member 
      ON guild_member.pid=player.id 
      LEFT JOIN player.guild 
      ON guild.id=guild_member.guild_id
      INNER JOIN account.account 
      ON account.id=player.account_id
      WHERE player.name NOT LIKE '[%]%' AND account.status!='BLOCK'
      ORDER BY player.level DESC, player.exp DESC 
      LIMIT
    Bu sorgu ilede kullanıcı bilgilerini çekip sayfaya yazdırıyorum

    Herşey çok güzel çalışıyor ancak sorguların olduğu sayfa 8-10 saniye gibi bir sürede açılıyor. bunun dışında sunucudaki mysqle aşırı bir yük bindiriyor

    Buna nasıl bir çözüm üretebilirim file cache makalelerini felan okudum ancak bir çözüm bulamadım

    başka bir fikir verebilicek varmı 3 saattir işin içinden çıkamıyorum

    Yardımcı olucak arkadaşlara teşekkürler
  • 27-10-2010, 11:11:11
    #2
    çapraz sorgularda sonuçların hızlı gelebilmesi için kullandığınız tüm databaselerde bağlantı yaptığınız alanların index i olması gerekir, bu bir zorunluluk değil, ancak index tanımlarsanız hızlı gelmesini garantilersiniz.

    Ayrıca mümkün mertebe like kullanmamaya çalışın, sorguyu yavaşlatır.
  • 29-10-2010, 16:16:40
    #3
    yapmaya çalıştığın şey üye olurken şu kadar kullanıcı var olayımı m2-tr nin eski scriptindeki gibi?
  • 29-10-2010, 21:11:01
    #4
    metin 2 nin database yapısı . mysql in stored procedures larına bakarsanız iyi olur.