|
Opisywany program służy do automatyzacji backupu bazy MySQL dla Mambo oraz wysłania zarchiwizowanych danych do zewnętrznej lokalizacji z wykorzystaniem e-maila, aby osiągnąć ich bezpieczne składowanie.
Szukałem automatycznej, prostej i szybkiej drogi do utrzymania swojej bazy w bezpieczeństwie.W szczególności chciałem znaleźć:
1) Szybką drogę do backupu danych.
2) Łatwy proces transferu danych poza serwer hostingowy do zewnętznej lokalizacji docelowej.
3) Automatyzację całego procesu.
Program był testowany na CPanel'u uruchomionym na Linuksie/Uniksie. Używa komend systemu Linux, takich jak gzip, tar, mutt i mysqldump. Zainstaluj oprogramowanie i przetestuj. Jeśli nie będzie działać, zapytaj administratora serwera hostującego Twoj serwis czy wymagane komendy Linuksa są dostępne (zazwyczaj są), a jeśli nie, to czy może je dla Ciebie zainstalować.
Program może działać również pod innym panelem kontrolnym lub systemem operacyjnym, jeśli znasz powiązane z programem komendy i odpowiednio je zamienisz ze stosowanymi standardowo. Możesz również użyć tej metody do zautomatyzowania backupu innych baz danych, plików lub katalogów.
Pliki programu
1) Pobierz pliki programu z MamboXchange. Opcja "--quote-names" dla mysqldump jest wymagana do załączania tabel i nazw pól ze znakiem " ` " (backquote). Jest tak, ponieważ niektóre nazwy MySQL są zarezerwowanymi słowami kluczowymi i generują błędy gdy próbujesz przywrócić bazę z plików backupu. Zajęło mi troche czasu na testy i pojęcie tego wszystkiego!
Instrukcje
1) Program działa z CPanelem na systemie Linux/Unix.
2) Ustaw 4 zmienne - DBNAME, DBPASS, DBUSER, EMAIL.
3) Możesz użyć dowolnego konta e-mail dla zmiennej EMAIL, w przypadku gdy plik może być duży, np.: Yahoo! Mail lub GMail.
4) Skopiuj program do swojego katalogu prywatnego /home/{yoursite}/etc/cron_backup.sh; a nie w katalog /home/{yoursite}/www/cron_backup.sh, gdzie wszyscy mają dostęp.
5) Chmod (zmień prawa do pliku) cron_backup.sh na 711 (-rwx--x--x).
6) Ustaw zadanie crona do automatycznego wykonania tego programu. Zobacz http://en.wikipedia.org/wiki/Cron jak to zrobić, jeśli nie wiesz.
Wskazówki
1) Ustaw harmonogram crona na "* * * * *" do testów, bedzie uruchamiał się CO MINUTĘ. Zauważ, że czas na Twoim serwerze hostingowym może być inny od Twojego czasu LOKALNEGO.
2) Zresetuj ustawienia harmonogramu crona na "55 23 * * *", czyli na sugerowany czas backupu po zakończeniu testów. Jest to codzienny backup, o godzinie 23:55, według czasu na serwerze hostingowym.
3) Przetestuj dane z wykonanego backupu poprzez przywrócenie bazy danych na innym RÓWNOLEGŁYM/TESTOWYM serwisie, używając dostępnego w CPanelu phpMyAdmina.
4) Zaloguj się na podane konto EMAIL raz na jakiś czase (np co 6 miesięcy) aby skasować nadmiarowe backupy i zwolnić trochę miejsca.
5) Zapytaj o pomoc, lub przedyskutuj swoje rozwiązania na Mambo forum.
Ustawienia zadań crona w CPanelu
CPanel używany na Twoim serwerze hostingowym ma wiele opcji. Podobnie jak inne panele zarządzające, jak np. DirectAdmin, Ensim, Plesk, vDeck i inne. Bardzo często ich funkcje są podobne i możesz zaadaptować poniższe kroki nawet jeśli nie jesteś użytkownikiem CPanelu. Zauważ, że możemy użyć poniższych kroków również do automatyzacji backupu innych baz danych, plików i katalogów.
Zmierzamy do tego, aby użyć harmonogramu crona do wykonania codziennych, automatycznych backupów. Bo niby dlaczego mielibyśmy robić to ręcznie, skoro mamy program-robota do wykonania tego automatycznie?
W swoim CPanelu kliknij na “Cron Jobs” (zobacz punkt 1). Następnie wybierz “Standard”.
Ustaw harmonogram jak przedstawiono poniżej. Możesz użyć darmowego konta e-mail w polu adresu e-mail. Kliknij “Save Crontab”. Nastepnie kliknij “Advanced”, aby zobaczyć swój harmonogram raz jeszcze. Powinieneś zobaczyć coś w stylu "55 23 * * *". Zmień to na "* * * * *" dla testów. PAMIETAJ, aby przywrócić pierwotne ustawienia po zakończeniu testów.
Powinieneś otrzymać e-maila z danymi backupu jako plik załącznika, około 1 minuty po testach. Pobierz i zapisz ten załącznik na swój dysk lokalny. Zawsze zweryfikuj dane z backupu, sprawdzając czy cały proces przebiegł gładko!
Kliknij na “MySQL Databases” (zobacz punkt 2). Utwórz nową, pustą bazę jeśli nie posiadasz równoległego serwisu (zainstaluj inny, nowy serwis Mambo) do testów danych uzyskanych z backupu.
Kliknij na “phpMyAdmin” (zobacz punkt 3) na dole formularza. Wybierz nową, pustą bazę LUB równoległa bazę testową. NIE RÓB TESTÓW NA DZIAŁAJĄCEJ BAZIE DANYCH!
Kliknij na zakładkę “SQL”. W polu “Location of the text file”, wybierz swój plik załącznika. Jako “Compression”, wybierz “gzipped”. Kliknij “Go”. Dane backupu (które są aktualnie zapytaniami SQL oraz wydawanymi rozkazami) powinny uruchomić się i załadować na Twojej testowej bazie danych bez problemu.
Co zrobić, jeśli nie zadziała?
Nie panikuj. Przecież pracowałeś na TESTOWEJ bazie danych, prawda? Przeczytaj raz jeszcze całą instrukcję i spróbuj ponownie. Możesz też przeszukać Mambo forum, większość problemów już została znaleziona i rozwiązana wcześniej przez innnych użytkowników.
Polska adaptacja: Marek Dylewicz, MamboPL.com Team
Oryginał dokumentu autorstwa Derricka Lo:
Ecommerce, CRM, CMS Open Source Solutions | Matrix-E.com
Matrix-E.com implements Web Ecommerce, Customer Relationship Management (CRM), Enterprise Resource Planning (ERP) and Content Management Systems (CMS).
|