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 DESCYukaridaki 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 LIMITBu 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