WP Migrate DB Pro CLI ile WordPress Veritabanınızı ve Medyanızı Uzaktan Yedekleyin


WordPress kurulumlarınızın düzenli yedeklerini tutmak, muhtemelen bir siteyi başlattıktan sonra yapmanız gereken en önemli şeylerden biridir. Aslında, WordPress eklenti deposunda "yedekleme" terimini ararsanız, göreve uygun olduğunu iddia eden 700'den fazla bulacaksınız.

Bugün, bu listede olmayan bir eklenti olan WP Migrate DB Pro'yu kullanarak oldukça güvenilir bir uzaktan yedekleme çözümü kuracağız. Daha iyi bir iş çıkarabilecek veya kurulumu daha kolay eklentiler var mı? Neredeyse kesinlikle, ancak bunlardan birkaçı merkezi bir uzaktan yedekleme çözümü sunuyor ve hiçbiri, bir web sitesi oluşturduğumda güvendiğim çok kısa eklentiler listemde değil.

genel bakış

Buradaki kurulum oldukça basittir ve WP Migrate DB Pro ve CLI ve Media Files eklentilerinin kurulu olduğu yeni bir WordPress kurulumuyla bir sunucunuz olduğunu varsayar. Yedeklemeyi düşündüğünüz sitelerin herhangi birinden yalnızca benzersiz bir tablo öneki ile diğer siteleri yedeklemek için kullandığınız yeni bir yüklemeyi kullanmak isteyeceksiniz ve hatta MAMP gibi bir yerel geliştirme sunucusu kullanabilirsiniz (Hangi yerel geliştirme ortamına karar verme Sisteminizin CRON'una erişiminiz olduğu sürece 4 En İyi Yerel WordPress Geliştirme Ortamını inceledik.

Bu başlangıç ​​noktasından itibaren aşağıdakileri yapacak bir bash betiği yazacağız:

  1. Geçerli veritabanının bir dökümünü oluşturun.
  2. Veritabanını ve muhtemelen medya dosyalarını uzak bir siteden çeken WP Migrate DB Pro CLI aracılığıyla bir profil geçişi çalıştırın.
  3. Alınan veritabanı ve medya dosyalarını paketleyin ve bir yedekleme klasörüne taşıyın.
  4. Orijinal veritabanını geri yükleyin.
  5. Her profil için tekrarlayın.

yapı

1. Uzak Site Profillerini Ayarlayın

Bu, muhtemelen en aşina olduğunuz kısımdır. Yedeklemeye başlamak istediğiniz bir siteden bağlantı bilgilerini alın ve ardından yedekleme sitenizde WP Migrate DB Pro'da yeni bir profil oluşturun. Bir çekme taşıma kullanın ve önceden doldurulmuş bul ve değiştir satırlarını kaldırın, çünkü biz sadece uzak siteyi olduğu gibi yedeklemek istiyoruz, verileri aslında bu sunucuya taşımak değil. Revizyonları hariç tutmak için "Gönderi Türlerini Hariç Tut" seçeneğini ayarlayın ve ardından "Gelişmiş Seçenekler" altındaki "GUID'leri Değiştir" seçeneğinin işaretini kaldırın.

Uzak medyanızı da yedekleyecekseniz, “Medya Dosyaları”nın yanındaki kutuyu işaretleyebilir ve “Tüm yerel medya dosyalarını kaldır ve tüm uzak medya dosyalarını indir” seçeneğini belirleyebilirsiniz. Bu, yedeklediğimiz sitedeki tüm medyayı kopyalamamızı sağlayacaktır.

Son olarak, "Taşıma Profilini Kaydet"in yanındaki kutuyu işaretlemeniz ve yeni profilinize bir ad vermeniz ve ardından "Profili Kaydet"i tıklamanız gerekir. "Taşı ve Profili Kaydet"i tıklamadığınızdan emin olun, çünkü bu taşıma profilini sadece bizim için orijinal veritabanımızı geri yükleyecek olan komut dosyamızda kullanacağız.

Yedeklemek istediğiniz kadar çok site için bu adımı tekrarlayın, ardından sayfanın üst kısmındaki “Kayıtlı Profiller” bağlantısını tıklayın, böylece oluşturduğunuz profillerin listesini ve birlikte kullanacağımız kimliklerini görebilirsiniz. CLI Eklentisi.

2. Yedekleme Komut Dosyasını Yapılandırın

Komut dosyasını buradan alın veya aşağıdaki kodu kopyalayın.

wpmdbpro-cli-remote-backup-script.sh olarak sunucunuzda güvenli bir yere kaydedin ve sitenizin ayarlarına göre aşağıdaki değişkenleri ayarlayın:

 SITE_PATH #The absolute path to your WordPress install. BACKUP_DIR #The absolute path to a folder to keep the backups in. MYSQL_USER #MySQL username from wp-config.php MYSQL_PASS #MySQL password from wp-config.php MYSQL_DB #MySQL username from wp-config.php TABLE_PREFIX #Table prefix from wp-config.php (Should be unique, don't use 'wp_')

Daha sonra, WP Migrate DB Pro'da önceden kurmuş olduğunuz profiller listesine gitmek ve bunları, çalışılacak SITES profil dizisine eklemek isteyeceksiniz. Wp-admin'deki profil listeniz şöyle görünüyorsa:

 1 - Backup foo.com 2 - Backup dev.anothersite.com 3 - Backup danger.zone

Ardından SITES dizisini şu şekilde ayarlarsınız:

 SITES[1]=foo_com SITES[2]=dev_anothersite_com SITES[3]=danger_zone

Parantez içindeki sayıların profil kimliği olması gerektiğini ve sağdaki dizenin yedekleme dosyalarınız için dosya adı tabanı olacağını ve bu nedenle boşluk veya özel karakter içermemesi gerektiğini unutmayın.

Bu ayarlar sunucunuz için işe yaramazsa PATH_TO_WP_CMD , UPLOADS_FOLDER ve APACHE_USER değişkenlerini de değiştirmeniz gerekebilir.

Devam edin ve değişiklikleri kabuk komut dosyasına kaydedin ve aşağıdakileri çalıştırarak yürütülebilir olduğundan emin olun:

 $ sudo chmod +x wpmdbpro-cli-remote-backup-script.sh

Artık her şeyin iyi çalıştığından emin olmak için komut dosyasını test edebilirsiniz. Burada, komut dosyasını ana klasörünüze kaydettiğinizi varsayıyorum:

 $ ~/wpmdbpro-cli-remote-backup-script.sh

Şuna benzeyen ve ayarladığınız her profil için tekrar eden bir çıktı görmelisiniz:

 ----------------- Tue May 19 15:35:05 PDT 2015 | foo_com | Migrate DB Profile: 1 ------------------- Backing up db... Performing migration via WPMDBPro CLI ------------------------------------------- Verifying connection... Initiating migration... Migrating tables 100%[========================================] 0:01 / 0:01 Initiating media migration... Removing all local files before download of remote media... Determining media to migrate - 39 of 39 attachments (100%) Downloading files 100%[===========================================] 0:24 / 1:33 Cleaning up... Success: Migration successful. ------------------------------------------- Getting tables to save for backup of foo_com Backing up tables: wp_commentmeta wp_comments wp_links wp_options wp_postmeta wp_posts wp_term_relationships wp_term_taxonomy wp_terms wp_usermeta wp_users Moving Uploads Folder TARing Backup Cleaning up...

Çıktınızda hatalar varsa veya çalışmamış gibi görünen bir şey varsa, tüm değişkenleri doğru bir şekilde doldurduğunuzdan ve sahip olduğumuz tüm klasörler için yeterli izne sahip olduğunuzdan emin olun. Dosyaları manipüle etme. Her şey yolunda görünüyorsa, yedeklerinizi depolamak için belirttiğiniz klasöre bakın ve ayarladığınız profillerin her biri için foo_com-201505191535.tar.gz .

3. Bir CRON işi ayarlayın

Artık yedekleme komut dosyası ayarlandığına göre, bu komut dosyasını haftada bir kez çalıştırmak için bir cron işi ayarlayalım, böylece her hafta tüm uzak sitelerimizin tam yedeklerini oluşturuyoruz.

İlk önce, düzenlemek için crontab'ınızı açın

 $ crontab -e

Bu betiği her Pazar sabahı saat 2'de çalıştıracak ve çıktıyı bir günlük dosyasına ekleyecek bir iş ayarlayacağım.

 0 2 * * 0 /home/my_user/wpmdbpro-cli-remote-backup-script.sh >> /home/my_user/backups.log 2>&1

Artık crontab dosyasını kaydedebilir ve her şeyin plana göre gittiğinden emin olmak için önümüzdeki Pazartesi günlüğünü kontrol etmeyi unutmayın.

Niye ya?

Bazı okuyucular kendilerine şunu soruyor olabilir: “Zaten komut satırındayken bunun için neden WP Migrate DB Pro kullanayım? Sadece rsync'i kullanıp uzak veritabanını SSH üzerinden alamaz mıyım?" Elbette yapabilirsin! Uzaktan yedekleme gerçekleştirmenin birçok yolu vardır ve bazıları sizin için daha iyi seçenekler olabilir, ancak birkaç nedenden dolayı bunu bu şekilde yapmayı seviyorum:

  1. Low config : Bu kurulumu yaptıktan sonra yapmanız gereken konfigürasyon miktarı oldukça azdır. Yedekleme sunucunuzda SSH anahtarları oluşturmanız veya uzaktan oturum açma ve mysql kimlik bilgilerini açık metin olarak saklamanız gerekmez, tek yapmanız gereken bağlantı bilgilerinizi yeni bir profile kopyalamak ve bu profili bash betiğinize eklemektir.
  2. Taşınabilirlik : Yedeklediğiniz site WordPress çalıştıracaksa, size SSH erişimi veya uzaktan mysql oturum açma izni vermeyen kısıtlayıcı ana bilgisayarlarda bile yedekleyebilirsiniz.
  3. Çünkü yapabilirim : Bu yedekleme çözümü tüm durumlar için doğru olmayabilir, ancak biraz yapılandırma ve biraz CLI bilgisi ile neler yapılabileceğini görmek yine de oldukça güzel.

Bu kadar!

Bu, uzak sitelerinizi yedeklemeye başlamanız için yeterli olacaktır, ancak kesinlikle iyileştirme için yer var. Örneğin: bir şeyler ters giderse size bir e-posta göndermek için komut dosyasını değiştirebilir, profilleri doğrudan WordPress veritabanından alabilir, böylece bunları bash komut dosyasına sabit kodlamanız gerekmez ve eski yedekleri silebilirsiniz. yenilerine yer açın.

Bu özellikleri eklemek veya kendi kaşıntınızı kaşımak isterseniz, lütfen özümü çatallamaktan ve güncellemelerinize bağlantı içeren bir yorum bırakmaktan çekinmeyin.

Uzak sitelerinizi yedeklemek için WP Migrate DB Pro kullanma fikrini beğendiniz mi? Şu anda bu işlevi eklentinin kendisine ekleme planımız yok, ancak planlarımızın değişmesi gerektiğini düşünüyorsanız yorumlarda bize bildirin!

Copyright statement: Unless otherwise noted, this article is Collected from the Internet, please keep the source of the article when reprinting.

Check Also

Divi's Theme Builder ile Özel Global Başlık Nasıl Oluşturulur

Artık Tema Oluşturucu burada olduğuna göre, web sitenizi A'dan Z'ye kurmanıza yardımcı olacak yeni eğitimlere dalmak için sabırsızlanıyoruz. Buna Divi'nin yerleşik seçeneğini kullanarak özel başlıklar oluşturma da dahildir. Bu eğitimde Divi's Theme Builder'ı kullanarak global bir başlık oluşturmaya odaklanacağız. Bu sayfaya veya gönderiye farklı bir başlık atamadıysanız, web sitenizin her yerinde genel bir başlık görünecektir.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir