Prosty i szybki backup bazy dzięki Percona XtraBackup

Percona XtraBackupWykonanie backupu małej bazy danych nie jest problemem. Kilkusekundowy przestój aplikacji czy strony w godzinach nocnych, nie stanowi dla nas większego kłopotu. Trudność pojawia się, kiedy do zarchiwizowania mamy naprawdę spore ilości rekordów. Przykładem takim może być baza danych MySQL 5.5, która zawiera około 83 973 092 rekordów, zajmujących blisko 8,2 GB. Jak wykonać szybko kopię zapasową takiej bazy, aby nie odczuli tego użytkownicy? Na szczęście jest na to rozwiązanie!

Najprostszą metodą może być wykorzystanie mechanizmu replikacji bazy MySQL. Konfigurujemy drugą bazę slave, z której to wykonujemy kopię zapasową. Na czas backupu możemy taki serwer zatrzymać, skopiować pliki lub wykonać zrzut za pomocą polecenia mysqldump. Podczas archiwizacji obciążamy jedynie klona głównej maszyny.

A co zrobić, jeżeli nie stać nas na zakup drugiego serwera, która posłuży nam jako baza zapasowa? Odpowiedzią na to pytanie jest aplikacja Percona XtraBackup, która wydawana jest na licencji GPLv2. Pozwala ona na wykonanie kopii zapasowej bazy danych, bez jej przestoju. Wspierane są serwery bazodanowe, takie jak: Percona Server, MySQL, MariaDB, oraz Drizzle. Oprogramowanie to pozwala na takie operacje jak:

  • szybkie wykonywanie kopii zapasowej
  • nieprzerywanie transakcji podczas wykonywania backup
  • automatyczną weryfikację zarchiwizowanych danych
  • szybszy czas odzyskiwania danych
  • wykonywanie przyrostowych backupów
  • prostsze tworzenie replikacji
  • wykonywanie kopii zapasowej bez obciążania serwera
  • przenoszenie tabel w czasie rzeczywistym pomiędzy serwerami
  • backupuje tylko dane składowane w InnoDB

Z oprogramowania Percona XtraBackup, korzystają duże portale społecznościowe jak na przykład Facebook:

"Facebook users create a vast amount of data every day. To make sure that data is stored reliably, we back up our databases daily. Facebook was an early adopter of incremental backup in XtraBackup." - Vamsi Ponnekanti, Facebook Engineering

Instalacja Percona XtraBackup

Instalacja oprogramowania jest bardzo prosta, dzięki przygotowanym binarnym paczkom dostępnych dla systemów takich jak: Red Hat, CentOS, Debian i Ubuntu. Dostępne są również repozytoria dla aplikacji Yum oraz Apt.

Instalację rozpoczynamy od dodania do systemu, repozytorium z aplikacją. Do pliku /etc/yum.repos.d/percona.repo dodajemy wpis:

[percona]
name = CentOS $releasever - Percona
baseurl=http://repo.percona.com/centos/$releasever/os/$basearch/
enabled = 1
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-percona
gpgcheck = 1

Musimy jeszcze skopiować klucz GPG i zapisać go do /etc/pki/rpm-gpg/RPM-GPG-KEY-percona. Od tego momentu możemy zacząć instalować oprogramowanie wydając polecenie:

yum install xtrabackup

Całe oprogramowanie składa się z tak naprawdę trzech aplikacji:

  • xtrabackup - oprogramowanie napisane w języku C, które kopiuje dane InnoDB i XtraDB
  • innobackupex - skrypt, który uzupełnia braki poprzedniego programu. Kopiuje całą zawartość serwera MySQL
  • tar4ibd - pakuje do formatu tar dane InnoDB

Zostaną zainstalowane trzy podobne polecenia, które służą do wykonywania kopii zapasowych z odpowiednich wersji serwerów bazodanowych:

  • xtrabackup - Percona Server 5.1 & MySQL 5.1 w/InnoDB plugin
  • xtrabackup_51 - Percona Server 5.0, MySQL 5.0 & MySQL 5.1
  • xtrabackup_55 - Percona Server 5.5 & MySQL 5.5

Czas na wykonanie pierwszego backupu za pomocą xtrabackup.

1
2
3
4
5
6
Znalazłeś błąd w newsie? Kliknij i zgłoś go używając formularza!
podaj wynik 13 + 17 =
  
 
Komentarze
  1. Fakt.. dobre i niezawodne :)

Dodaj komentarz
  
Powiadom mnie o odpowiedzi na mój komentarz

Publikowane komentarze są prywatnymi opiniami użytkowników portalu. OSWorld.pl nie ponosi odpowiedzialności za treść opinii.
Creative Commons Uznanie autorstwa 3.0