WP-DBManager Eklentisi ile Veritabanınızı Onarın, Optimize Edin ve Yedekleyin

Eklenti Adresi : http://wordpress.org/extend/plugins/wp-dbmanager/

WordPress gibi gelişmiş bir sistemin beraberinde gelişmiş bir veritabanı var. Fakat bu blog sistemi dışarıdan dahil edilen eklentiler sebebiyle belirli bir süreden sonra veritabanında gereksiz bilgiler barındırmakta.

Bu küçük kalıntılar ilk başta problem yaratmasa bile zaman içerisinde yüksek boyutlara gelerek veritabanındaki arama işlemlerini uzatmakta, işlem kabiliyetini ve sunucu performansını azaltmakta.

Size sunumunu yaptığım eklentinin web sayfanızda aşırı derecede bir hızlandırma etkisi yaratacağını garantilemiyorum, fakat yüksek ihtimal sunucunuz ve yorgun sql döngüleriniz nefes alacaktır.

Yukarıdaki eklentiyi indirip WordPress web sayfanıza kurduysanız makalenin ikinci bölümünü yani detaylandırmayı okuyabilirsiniz.

Başlamadan önce

Bu eklenti veritabanı üzerinde çalışacaktır. 4 ayrı WordPress sitesinde hem FTP hem de lokal sunucularda test ettim ve herhangi bir sorun ile karşılaşmadım. Ama yine de biz işimizi garantiye alalım.

İster PhpMyAdmin, ister WordPress üzerinden yedeğinizi alın.

Yedeğinizi WordPress üzerinden alacaksanız Araçlar > Dışa Aktar alanını kullanmanız gerekmektedir.

Detaylandırma

Kurulumu Tamamlama : Eklentiyi kurduktan sonra ilk yapmanız gereken işlem wp-content/plugins/wp-dbmanager alanına giderek burada bulunan htaccess.txt dosyasını wp-content/backup-db alanına taşımanız. Taşıma işleminden sonra dosyanın htaccess.txt olan ismini .htaccess olarak değiştirin.

Bu işlemi tamamladıktan sonra eklenti sorunsuz bir şekilde çalışacaktır.

Web sayfanızın wp-admin bölümüne girdiğinizde menüde sol kısımda gördüğüne benzer yeni bir alan ile karşılaşacaksınız. Buradaki alanları hızlıca tanıyalım ; Database kısmı genel veri tabanını bilgilerini barındırır,

Backup DB anlık veritabanı yedek almanızı sağlar,

Manage Backup DB alanında yedekler görüntülenir ve email ile gönderimi sağlanır,

Optimize DB gereksiz tablo yapılarını temizlemenizi sağlar,

Repair DB bozuk tablo yapılarını onarır,

Empty/Drop Tables(tablo silme) mümkün mertebe girmeyeceğiz bir alandır,

Run SQL Query veritabanımız dahilinde SQL sorgusu çalıştırmamızı sağlar,

DB Options genel ayarlar haricinde  yedekler için günlük oluşturmanızı ve zaman belirterek yedek almanızı sağlar,

Uninstall WP-DBManager ise tahmin ettiğiniz gibi sorunsuz olarak eklentiyi sitenizden kaldırmanızı sağlar.

Database ve Backup DB Alanları

Her iki alanda önemli bilgiler barındırmakta. Bu yüzden bu iki bölümü art niyetli kişilerin görüntülemesi güvenlik açığı oluşturabilir.

Veritabanının adını başkalarıyla paylaşmayın.

Bu alanda yapabileceğiz tek ayar yedek dosyaları için GZIP sıkıştırmasıdır. Bu seçeneği aktif etmeniz SQL uzantılı yedeklerinizi GZIP içine alarak küçük boyutlara gelmesine sebep olur. Kullanmanızı tavsiye derim.

DB Options

Bu kısım en önemli ayarlarımızı atayacağımız yer.

Üst kısımda mysqldump ve mysql alanlarının yerleri belirtiliyor. Bu konuda bilginiz yoksa hiç dokunmayın. Öylece kalsınlar. Bu ayarlar kendi sunucularını barındıran kişiler için özgünleştirilebilir.

Path To Backup alanı ise önemli. Yedeklerimizin kaydedileceği bölümü seçiyoruz. Hani şu .htaccess taşıdığımız klasör. O dosya ile birlikte arama motorlarının ve ziyaretçilerinin direkt erişimini engelledik. Fakat yine de hırsızlar dışarıdan veritabanı yedeklerimize erişememeli. Bunun için yapacağımız şey yedekleri alt dizine oluşturmanız.

Dosya yöneticisiyle veya FileZilla gibi FTP programlarını kullanarak sunucumuz alt dizininde backup klasörü oluşturuyor ve bu alandaki adresi onunla değiştiriyoruz.

Bu da ilginizi çekebilir  WordPress'e YouTube videosu nasıl eklenmeli?

Örneğin /var/www/vhosts/adobewordpress.com/httpdocs/wp-content/backup-db adresindeki dosya download edilebilir iken /var/www/vhosts/adobewordpress.com/backup alanındaki dosya ziyaretçiler tarafından download edilemez.

Maximum Backup Files sizinde tahmin ettiğiniz gibi klasörümüzde barındırılacak yedek dosyasının sayısı.

Ben 5 olarak ayarladım. Siteniz veritabanı küçük ise bu sayıyı arttırabilirsiniz.

Diğer Ayarlar 

  • Automatic Backing Up of DB ne kadar süre ile yedek alacağımızı belirttiğimiz bölüm. Ben her gün olarak yedek almayı ve tüm yedekleri GZIP ile sıkıştırmayı seçtim.
  • Automatic Optimizing of DB ise aynı bölümün optimizasyon bölümü. Ben ayda bir bu işlemi yapmak istediğimi belirttim.
  • Automatic Repairing of DB ise veritabanının ne kadar sürede bir tamir edilmesini istediğimizi belirttiğimiz bölüm. Ben Disable diyerek bu seçeneği kapattım. Repair işlemini manuel olarak el ile yapmayı tercih ediyorum. Fakat siz bu seçeneği kullanacaksanız 1 Week olarak ayarlamanızı öneririm.

Manage Backup DB Alanı

Bu bölümden hali hazırdaki yedeklerinizi email adresinize yönlendirebilirsiniz. Ayrıca birkaç küçük ayar yine size sunulmuş. Arayüz çok basit ve anlaşılır.

Optimize ve Repair DB Alanları

Bu bölümlerde veritabanını optimize ve tamir ediyoruz. İçerisindeki seçeneklerle hiç oynamayın. Bırakın tüm veritabanlarınızı işlesin.

Fakat bu bölümü uygulamadan önce üstte belirttiğim gibi bir yedek alın.

Hatalar

Database Failed To Backup On ’14 Kasım 2012 @ 18:35′. Backup File Size Is 0KB.

Eğer üsttekine benzer bir hata alıyorsanız sebebi gayet komik. Veritabanınızın şifresindeki semboller bu hataya sebep oluyor. Veritabanı şifrenizi rakamlar ve harflerden oluşturunca bu hata otomatik olarak ortadan kalkıyor.

Uyarılarım

  • “MYSQL dump path does NOT exist. Please check your mysqldump path under DB Options. If uncertain, contact your server administrator.MYSQL path does NOT exist. Please check your mysql path under DB Options. If uncertain, contact your server administrator.” şeklinde kırmızı uyarılar görüyorsanız DB Options alanındaki ayarları aşağıdaki gibi yapın :

Path To mysqldump: /usr/bin/mysqldump
Path To mysql: /usr/bin/mysql

  • Veritabanı üzerinde çalışıyor diye çekinmeyin. Eklentinin kodları tamamıyla güvenli. Bilgileriniz çalınmıyor. Zaten WordPress tarafından onay aldıklarına göre negatif anlamda bir işlevi olamaz.
  • Optimize işlemini aydan 2-3 defadan fazla yapmayın. Muhtemelen bir zararı olmayacaktır fakat yararı da olmayacaktır.
  • Ben otomatik yedek alınımını önermiyorum. Sebebi bazı sunucularda ileriye dönük veritabanı işlemlerinin yavaşlamaya sebep olması. Yinede siz bilirsiniz.
  • Run SQL Query ve Empty/Drop Table alanlarına teknik bilginiz çok iyi değilse girmeyin derim. Bu alanlarda yapacağınız yanlış işlemler veritabanınızda kalıcı hasarlar oluşturabilir.
  • Uninstall seçeneği yavaş yavaş popülerleşiyor. Böylece eklentiler silinirken geride bir iz bırakmıyor.

Umarım bu makale sonrasında daha hızlı ve temiz bir veritabanına sahip olursunuz.

İyi çalışmalar.



  • İlk kurduğumda veritabanı yollarıyla ilgili uyarıyı aldım..

    Önerdiğiniz gibi /usr/bin/mysqldump | /usr/bin/mysql
    değiştirdim.. Ancak hala aşağıdaki uyarıları alıyorum. Ne yapmalıyım ??
    ———————————————-
    Yedekleme klasörü mevcut

    Yedekleme klasörü yazılabilir

    MySQL çıktı yolu kontrol ediliyor …

    MySQL çıktı yolu yok. VT seçenekleri bölümünden mysqldump yolunu kontrol edin. Emin değilseniz sunucu yöneticinize danışın.

    MySQL yolu kontrol ediliyor. …

    MySQL yolu yok. Lütfen VT seçenekleri bölümünden MySQL yolunu kontrol edin. Emin değilseniz sunucu yöneticinize danışın.

    PHP fonksiyonları kontrol ediliyor (passthru(), system() ve exec()) …

    passthru() etkisiz.

    system() etkisiz.

    exec() etkisiz.

    Üzgünüm, sunucu yöneticiniz passthru(), system() ve exec() fonksiyonlarının kullanımını iptal etmiş, dolayısıyla bu yedekleme betiği çalıştırılamıyor. WordPress veritabanı yedekleme seçeneğini kullanmayı düşünebilirsiniz.

    • DefacerKam

      Try these path

      /usr/local/bin/mysqldump
      /usr/local/mysql/bin/mysqldump
      /usr/mysql/bin/mysqldump
      /usr/bin/mysqldump
      mysqldump

      /usr/local/bin/mysql
      /usr/local/mysql/bin/mysql
      /usr/mysql/bin/mysql
      /usr/bin/mysql
      mysql