Yazan Dmitri Joukovski ve Pavel Pragin

MySQL veritabanı, tutarlı hızlı performansı, yüksek güvenilirliği ve kullanım kolaylığı nedeniyle dünyanın en popüler açık kaynaklı veritabanı haline geldi. Yönetilen barındırma sağlayıcısında bulunan çevrimiçi forumlarınız ve wiki için MySQL veritabanını kullanıyor olabilirsiniz veya Bugzilla ile hataları izlemek için uzak bir ofiste kullanıyor olabilirsiniz veya sadece MySQL kullanan yeni bir Web 2.0 uygulaması geliştirmeyi düşünüyor olabilirsiniz. . Her iki durumda da, MySQL veritabanınızda depolanan bilgilere değer verirseniz, veritabanı uygulamasında minimum etkiyle başarılı, güvenli ve tutarlı MySQL yedeklemeleri sağlamanız gerekir. Yedekleme çözümünüzün ağ, sunucu ve depolama kaynaklarının en verimli kullanımını sağladığından emin olun.

MySQL için kullanımı kolay ancak esnek ve sağlam bir yedekleme ve kurtarma sağlayarak hayatınızı kolaylaştıran bir çözüm arıyorsanız, Zmanda Recovery Manager (ZRM) sizin için doğru seçim olabilir. Hakkında ayrıntılar ZRM işlevselliği burada mevcuttur.

Bir veritabanının herhangi bir yedeklemesi için temel hususlar, yedeklemenin tutarlılığı ve kullanıcılar ve uygulamalar üzerindeki etkisidir. Ancak uzak MySQL'in bir yedeğinin aşağıdakilerle ilgili ek zorlukları vardır:

  • ağ kullanımı
  • güvenlik ve
  • MySQL verilerinin farklı bir ana bilgisayara kurtarılabilme esnekliği.

Son nokta, MySQL ortamınız üzerinde tam kontrole sahip olmadığınız ve verilerinizi farklı bir MySQL sunucusuna veya farklı bir işletim sistemine sahip farklı bir yönetilen barındırma sağlayıcısına kurtarma seçeneğine sahip olmak istediğinizde önemli olabilir.

Artımlı yedeklemeler, yedekleme penceresini ve ağ kullanımını önemli ölçüde azaltır çünkü yalnızca son tam veya son artımlı yedeklemeden sonraki değişiklikler kablo üzerinden taşınır. ZRM, verilerinizi zamanda belirli bir noktaya geri götürmek için birden çok artımlı yedekleme görüntüsü kullanmanız gerekse bile, verilerinizi artımlı yedeklemelerden kurtarmanızı kolaylaştırır. Artımlı yedeklemeler, MySQL ikili günlüklerinin etkinleştirilmesini gerektirir, ancak MySQL belgelerine göre ikili günlüklerin etkinleştirilmesi, 1%'den daha az performans artışı.

Mantıksal yedeklemeler, kurtarma için daha fazla esneklik sağlar çünkü yedekleme dosyası, hem veritabanı şemasını hem de içeriği yeniden oluşturmak için tüm MySQL ifadelerini içeren bir metin dosyasıdır. Mantıksal yedekleme, MySQL kümeleme için kullanılan NDB motoru dışındaki tüm depolama motorlarında çalışır. Mantıksal yedeklemenin en büyük avantajı, veritabanı kurtarma için esnekliktir. MySQL'in mantıksal yedeklemesini başka bir mimariye ve hatta başka bir veritabanına geri yükleyebilirsiniz. Mantıksal ZRM yedek imajlarının taşınabilirliği, ZRM'yi taşıma için uygun bir araç haline getirir. Örneğin, MySQL verilerinizi taşıyabilirsiniz:

  • Solaris'te MySQL'den Linux'ta MySQL'e
  • Bir depolama motorundan diğerine
  • 32 bit sunucudan 64 bit sunucuya
  • Bir yönetilen barındırma sağlayıcısından veri merkezinize veya farklı MySQL yapılandırmasına sahip başka bir sağlayıcıya

Elbette, böylesine esnek bir toparlanma için ödenecek bir bedel var. Mantıksal yedeklemelerden verileri geri yüklemek, tüm MySQL ifadelerini okumanız ve yeniden oynamanız gerektiğinden uzun zaman alabilir. Diğer bir dezavantaj, mantıksal yedeklemenizin boyutunu tahmin etmenin zor olabilmesidir. Veri türüne ve veritabanı şemanıza bağlı olarak, mantıksal yedeklemenin boyutu veritabanının kendisinden daha büyük olabilir. Çözümlerden biri, mantıksal yedekleme temelde bir metin dosyası olduğundan, genellikle iyi bir sıkıştırma elde edebileceğinizdir.

Ham yedekleme, yedeklemenizin ikili dosya olmasıyla bir veritabanının tutarlı bir kopyasını sağlar. Ham yedeklemelerin mantıksal yedeklemelere göre avantajları şunlardır:

  • Yedeklemeler ve özellikle kurtarmalar çok daha hızlıdır. Örneğin, 4-5 GB büyüklüğündeki aynı veritabanı için ham yedeklemenin mantıksal yedeklemeden 5 kat daha hızlı olduğunu ve ham yedek imajının kurtarılmasının mantıksal olanın kurtarılmasından 20 kat daha hızlı olduğunu görmek alışılmadık bir durum değildir. görüntü.
  • Sadece bir veritabanının kopyası olduğu için yedeklemenizin tam boyutunu her zaman bileceksiniz.
  • MySQL veritabanınız oldukça büyükse, örneğin 10-20 GB veya daha fazla ise önemli olabilecek daha iyi ölçeklenebilirlik sağlar.

Ham yedekler SADECE orijinal verilerle aynı işletim sistemi üzerinde MySQL sunucusunun aynı sürümüne kurtarılabilir. Bu, MySQL'in ham yedek imajlarını başka bir yönetilen barındırma sağlayıcısına kurtarma şansınızın çok yüksek olmadığı ve ham veya mantıksal yedeklemeyi seçerken bunu dikkate almanız gerektiği anlamına gelir.

Hem ham hem de mantıksal yedeklemeler sıcak yedekleme sağlar, yani yedekleme için MySQL sunucusunu kapatmanız gerekmez, ancak yedekleme sırasında tüm tablolar kilitlenir ve kullanıcılar verilerini giremez. Bu nedenle, tanımladığınız eşiklere göre yedeklemeleri geciktirmeye izin veren ZRM planlama eklentisini kullanmayı düşünmelisiniz. Örneğin, veritabanına 50'den fazla kullanıcı erişirse yedeklemeyi bir saat erteleyebilirsiniz.

MySQL'in uzaktan yedeklenmesi için önemli hususlardan biri, ZRM ile uzak MySQL sunucusu arasında ne tür bir bağlantı kurulacağına karar vermektir. ZRM, soket tabanlı bağlantı için bir eklenti ve SSH tabanlı bağlantı için başka bir eklenti sağlar. ZRM'nin esnek mimarisi, kullanıcıların kendi eklentilerini yazmasına olanak tanır.

Adından da anlaşılacağı gibi, soket kopya eklentisi, IP tabanlı ağ üzerinden ZRM ve MySQL arasında iletişim sağlayan bir soket oluşturur. Soket kopyalama eklentisi, xinetd hizmetinin MySQL sunucusunda çalışmasını ve varsayılan bağlantı noktası 25300'ün açık olmasını gerektirir. Gerekirse, bir yedekleme yöneticisi bağlantı noktasını değiştirebilir. Soket kopya eklentisi güvenli değildir ve yalnızca güvenlik söz konusu olmadığında veya güvenlik başka yollarla sağlandığında, örneğin ZRM ile uzak MySQL sunucunuz arasında bir VPN bağlantınız olduğunda kullanılmalıdır.

SSH kopya eklentisi, ZRM ile uzak MySQL sunucusu arasında güvenli bir kanal sağlar. Uzak MySQL sunucusunun ve ZRM çalıştıran yedek kullanıcının kimliğini doğrulamak için açık anahtarlı şifreleme kullanır. SSH eklentisi, standart TCP bağlantı noktası 22'nin açık olmasını ve SSH arka plan programının çalışmasını gerektirir. SSH kopya eklentisi, yedekleme verilerinin güvenliğinin sağlanması önemli olduğunda en uygunudur. SSH bağlantısı şifreleme için fazladan CPU döngüleri gerektirdiğinden, yuva bağlantısı ile yedeklemeye kıyasla yedekleme performansında bir darbe olabilir.

Aşağıdaki tablo, MySQL'in uzaktan yedeklenmesi için soket ve SSH kopyalama eklentisi seçerken dikkat edilecek noktaları özetlemektedir:

Uzak bağlantı
Eklenti
Kullanılan bağlantı noktası Güvenlik Göreceli performans Kurulum yorumları
SSH kopyası 22 (sabit) Yedekleme verilerini kablo üzerinden taşımak için güçlü kimlik doğrulama ve şifreleme sağlar Daha düşük performans ve MySQL sunucu belleğine, CPU kaynaklarına ve kullanılabilir bant genişliğine bağlıdır. Çoğu zaman, yedekleme ve kurtarma dışındaki nedenlerle zaten kurulmuş bir uzak MySQL sunucusuna SSH bağlantınız olabilir. Aksi takdirde ZRM ve MySQL sunucusu arasında SSH bağlantısı kurmanız gerekir.
Soket kopyası 25300 (değiştirilebilir) Kablo üzerinden yedekleme verileri güvenli değil Daha yüksek performans MySQL sunucusuna ek yazılım yüklenmelidir. Örneğin, ZRM 1.1'in Enterprise sürümü için MySQL-zrm-enterprise-socket-server-1.1-1.noarch.rpm kullanın. Topluluk sürümü için tam paket için indirmeler sayfasına bakın.

Daha fazla teknik ayrıntı için Zmanda Ağına ücretsiz kaydolun ve bu teknik incelemenin tam sürümünü indirin. Birkaç yaygın senaryo için ZRM'yi nasıl kullanacağınızı öğreneceksiniz. Örneğin, bu kullanım durumu için SSH kopya eklentisini kullanarak kablo üzerinde güvenli olan ve durağan haldeki verilerin nasıl yedekleneceği konusunda teknik ayrıntılar sağlayacağız:

İnternet üzerinden ZRM

Ek olarak, soket kopya eklentisini kullanarak daha verimli mantıksal ve ham yedeklemeler hakkında teknik ayrıntılar sağlayacağız.

Tüm zengin işlevselliği ile MySQL için ZRM, yalnızca özel veri koruma ihtiyaçlarınız için en uygun olan yedekleme ve kurtarma stratejisini uygulamak için bir araçtır. ZRM sağlam ve kullanımı kolaydır, ancak kendi uzak MySQL sunucusunu uygulamanıza ve yedekleme ve kurtarma için özel gereksinimlerinize bağlı olarak, MySQL için ZRM tarafından sağlanan her bir operasyonel seçenekle ilişkili tüm takasları göz önünde bulundurmalısınız.

Referanslar:
MySQL için ZRM
MySQL Wiki için ZRM
Zmanda Forumları