Çözüldü Xenforo Veri Tabanı Sorunu

  • Konbuyu başlatan rmzn
  • Başlangıç tarihi
R

rmzn

Kolay gelsin,

DBdeki xf_search tablosunun boyutu çok çabuk yükseliyor. xf_search tablosu boşken boyut 160MB, 1-2 gün sonra 1-2 GB oluyor.
Bu kadar boyuta ulaşması normal mi, otomatik temizleme yada bir çözüm var mı?

Teşekkürler.
 

apocalypse

Yönetici
Yönetim Ekibi
Katılım
9 Haz 2014
Mesajlar
1,045
Reaction score
1,016
Puanları
113
Web sitesi
xenforo.web.tr
PHP Versiyonu
PHP v7.0.x
XenForo Versiyonu
XF 1.5.x
Sitenizde eğer 1M + üzeri post yoksa pekte normal gözükmüyor. XF search tablosunun veritabanı motoru innoDB seçilmiş olması gerekir onu kontrol edin derim.
Search tablosunun belirli aralıklarla silinmesi için mysql event scheduler modülünü kullanabilirsiniz.

Kod:
CREATE EVENT truncate_search_table
ON SCHEDULE EVERY 1 DAY STARTS NOW()
DO TRUNCATETABLE xf_search;
Kodu kendinize göre düzenlemek için mysql referans sayfasına bakabilirsiniz.

Ek olarak cron jobs ile de halledebilirsiniz.

Kod:
<?php
mysql_connect('host','kullaniciadi','parola');
mysql_select_db("veritabaniadi") or die(mysql_error());
$query="TRUNCATE xf_search";
mysql_query($query);
mysql_close();
?>
Bu kodu cpanel kullanıyorsanız eğer

php /var/www/kullaniciadi/public_html/cronjobs/truncate_search_table.php
olarak ekleyin ve dk saat ayarlarınız yapılandırın.

Şayet forumunuz çok büyük ise xenforo enhanced search kullanmanız daha verimli olacaktır.Bunun için sunucunuzda elastic search paketinin kurulu olması gerekir.

İyi günler.
 
R

rmzn

Öncelikle cevabınız için teşekkür ederim.

Forum istatistikleri şu şekilde;
Konular: 1.449
Mesajlar: 11.163
Üyeler: 7.602

xf_search tablosu innoDB, kontrol ettim.
Mysql event scheduler için verdiğiniz kodu nereye yazmam gerekli?
Hostda cpanel yok maalesef başka bir panel kullanıyor..

Şuan tablo şu durumda ve boyutu her dk artmakta;


Sırf bu tablo yüzünden yeni host arıyorum, boyut yetmiyor..
İyi günler.
 
R

rmzn

Biraz araştırdıktan sonra mysql event scheduler modülünü çalıştırdım.
Şu kodu çalıştırdım, bakalım sonuçlar nasıl olacak..
Kod:
CREATE EVENT truncate_search_table
ON SCHEDULE EVERY 1 HOUR STARTS NOW()
DO TRUNCATE xf_search;
 

apocalypse

Yönetici
Yönetim Ekibi
Katılım
9 Haz 2014
Mesajlar
1,045
Reaction score
1,016
Puanları
113
Web sitesi
xenforo.web.tr
PHP Versiyonu
PHP v7.0.x
XenForo Versiyonu
XF 1.5.x
Öncelikle cevabınız için teşekkür ederim.

Forum istatistikleri şu şekilde;
Konular: 1.449
Mesajlar: 11.163
Üyeler: 7.602

xf_search tablosu innoDB, kontrol ettim.
Mysql event scheduler için verdiğiniz kodu nereye yazmam gerekli?
Hostda cpanel yok maalesef başka bir panel kullanıyor..

Şuan tablo şu durumda ve boyutu her dk artmakta;


Sırf bu tablo yüzünden yeni host arıyorum, boyut yetmiyor..
İyi günler.
Öncelikle event scheduler aktif etmelisiniz.

Bunu phpmyadmin sql penceresine yazın çalıştırın.
Kod:
SET GLOBAL event_scheduler = 1;
Sonrasında bu kodu yazıp çalıştırın.
Kod:
CREATE EVENT truncate_search_table
ON SCHEDULE EVERY 1 DAY STARTS NOW()
DO TRUNCATETABLE xf_search;
Böylece her gün xf_search tablosu kodu çalıştrıdığınız saatte boşaltılacaktır.
 
Üst