{"id":128859,"date":"2023-10-20T14:27:00","date_gmt":"2023-10-20T12:27:00","guid":{"rendered":"https:\/\/fotc.com\/?p=128859"},"modified":"2023-11-27T08:58:16","modified_gmt":"2023-11-27T07:58:16","slug":"mysql-backup","status":"publish","type":"post","link":"https:\/\/fotc.com\/pl\/blog\/mysql-backup\/","title":{"rendered":"MySQL backup w chmurze Google Cloud"},"content":{"rendered":"\n
Nieprzewidziane zjawiska, takie jak awaria sprz\u0119tu, uszkodzenie bazy danych, b\u0142\u0119dy u\u017cytkownik\u00f3w czy nawet z\u0142o\u015bliwe ataki mog\u0105 zwi\u0119kszy\u0107 ryzyko utraty danych. Rozwi\u0105zaniem s\u0105 kopie zapasowe baz danych, dzi\u0119ki kt\u00f3rym \u0142atwiej odzyskasz dane i utrzymasz funkcjonowanie firmy w sytuacji kryzysowej. Kopie zapasowe nie s\u0105 remedium wy\u0142\u0105cznie na sytuacje kryzysowe. W normalnych warunkach pomagaj\u0105 one spe\u0142ni\u0107 wymagania dotycz\u0105ce zgodno\u015bci i audytu oraz umo\u017cliwiaj\u0105 przywr\u00f3cenie kopii bazy danych do okre\u015blonego momentu w przesz\u0142o\u015bci.<\/p>\n\n\n\n
MySQL stanowi w tym wypadku odpowiednie wsparcie. Dostarcza kilku opcji tworzenia kopii zapasowych baz danych o r\u00f3\u017cnych mocach. To od Ciebie zale\u017cy wyb\u00f3r kombinacji metod, kt\u00f3re w najlepszym stopniu odpowiedz\u0105 na Twoje potrzeby. <\/p>\n\n\n\n
W jaki spos\u00f3b utworzy\u0107 kopi\u0119 zapasow\u0105 bazy MySQL? Istniej\u0105 na to dwa sposoby: fizyczny i logiczny.<\/p>\n\n\n\n
Fizyczna kopia bazy danych polega na kopiowaniu rzeczywistych plik\u00f3w danych, podczas gdy logiczna kopia zapasowa generuje instrukcje takie jak CREATE TABLE oraz INSERT. Umo\u017cliwiaj\u0105 one p\u00f3\u017aniejsze odtworzenie danych.<\/p>\n\n\n\n
Tak jak w skr\u00f3cie przedstawili\u015bmy to wy\u017cej, fizyczna kopia zapasowa bazy danych MySQL zawiera surowe kopie wszystkich plik\u00f3w i katalog\u00f3w w takiej formie, w jakiej istniej\u0105 na dysku. Kto powinien zdecydowa\u0107 si\u0119 na ten typ?<\/p>\n\n\n\n
Fizyczna kopia danych zapasowych jest dobrym rozwi\u0105zaniem w przypadku du\u017cych baz danych. Kopiowanie nieprzetworzonych plik\u00f3w jest znacznie szybsze w por\u00f3wnaniu do wykonywania logicznej kopii zapasowej<\/p>\n\n\n\n
Z jakich narz\u0119dzi mo\u017cna skorzysta\u0107 przy fizycznym tworzeniu kopii zapasowych baz MySQL? Do najbardziej popularnych nale\u017c\u0105:<\/p>\n\n\n\n
Logiczna kopia zapasowa bazy MySQL zawiera dane, kt\u00f3re MySQL mo\u017ce zinterpretowa\u0107 jako SQL lub jako tekst rozdzielany (delimited text). M\u00f3wimy wi\u0119c o reprezentacji bazy danych w postaci sekwencji instrukcji SQL, kt\u00f3re mo\u017cna wykona\u0107 w celu odtworzenia obiekt\u00f3w bazy danych i zaimportowania danych. Kto powinien rozwa\u017cy\u0107 wyb\u00f3r logicznej kopii zapasowej bazy danych MySQL?<\/p>\n\n\n\n
Z pewno\u015bci\u0105 jest to rozwi\u0105zanie dedykowane ma\u0142ym baz\u0105 danych, gdy\u017c odwrotnie ni\u017c w przypadku kopii fizycznej, przywracanie logicznych kopii zapasowych zajmuje wi\u0119cej czasu. Warto z niego skorzysta\u0107 podczas migracji do zarz\u0105dzanych us\u0142ug bazy danych w chmurze, lub te\u017c w kierunku odwrotnym.<\/p>\n\n\n\n
Do popularnych narz\u0119dzi s\u0142u\u017c\u0105cych do tworzenia logicznych kopii zapasowych nale\u017c\u0105:<\/p>\n\n\n\n
Zarezerwuj rozmow\u0119 z architektem chmurowym.<\/p><\/div>\r\n
Po r\u00f3\u017cne narz\u0119dzia odzyskiwania danych si\u0119gamy najcz\u0119\u015bciej w wyniku sytuacji, w kt\u00f3rej w wyniku b\u0142\u0119du tracimy do nich dost\u0119p. Point-in-time recovery pozwala odzyska\u0107 instancji do okre\u015blonego momentu, czyli je\u017celi b\u0142\u0105d spowodowa\u0142 utrat\u0119 danych, to korzystaj\u0105c z narz\u0119dzia PITR mo\u017cna odzyska\u0107 baz\u0119 w stanie, w jakim by\u0142a przed nast\u0105pieniem b\u0142\u0119du.<\/p>\n\n\n\n
PITR jest procesem dwuetapowym, opieraj\u0105cym si\u0119 na logach binarnych. W pierwszym przywraca pe\u0142n\u0105 fizyczn\u0105 lub logiczn\u0105 kopi\u0119 zapasow\u0105 jaka by\u0142a w momencie jej utworzenia. <\/p>\n\n\n\n
W drugim etapie, stosuj\u0105c dzienniki binarne mo\u017cna odtworzy\u0107 zmiany mi\u0119dzy momentem utworzenia kopii zapasowej a \u017c\u0105danym momentem. Dzienniki binarne zawieraj\u0105 wszelkie zmiany wprowadzone w instancji bazy danych w tym utworzenie tabeli czy wstawienie, aktualizacj\u0119 lub usuni\u0119cie wiersza. <\/p>\n\n\n\n
Jak to wygl\u0105da w praktyce? Je\u017celi kopie zapasowe tworzone s\u0105 codziennie o godzinie 8 rano, a problem pojawi\u0142 si\u0119 o godzinie 12 to w pierwszym kroku przywracane s\u0105 kopie zapasowe z godziny 10, a nast\u0119pnie z wykorzystaniem dziennika binarnego odtwarzane s\u0105 zdarzenia z czterogodzinnego okna czasowego pomi\u0119dzy godzin\u0105 10 a 12.<\/p>\n\n\n\n
W ramach Google Cloud mamy do czynienia z zarz\u0105dzan\u0105 baz\u0105 \u2013 Cloud SQL<\/a>. O tym jak w jej ramach dzia\u0142a backup pisali\u015bmy w tym artykule<\/a>. Mo\u017cesz te\u017c skorzysta\u0107 z wiedzy i do\u015bwiadczenia architekt\u00f3w Google Cloud firmy FOTC<\/a>, kt\u00f3rzy pomog\u0105 Ci zabezpieczy\u0107 bazy danych przed skutkami awarii.<\/p>\n","protected":false},"excerpt":{"rendered":" Nieprzewidziane zjawiska, takie jak awaria sprz\u0119tu, uszkodzenie bazy danych, b\u0142\u0119dy u\u017cytkownik\u00f3w czy nawet z\u0142o\u015bliwe ataki mog\u0105 zwi\u0119kszy\u0107 ryzyko utraty danych. Rozwi\u0105zaniem s\u0105 kopie zapasowe baz danych, dzi\u0119ki kt\u00f3rym \u0142atwiej odzyskasz dane i utrzymasz funkcjonowanie firmy w sytuacji kryzysowej. Kopie zapasowe nie s\u0105 remedium wy\u0142\u0105cznie na sytuacje kryzysowe. W normalnych warunkach pomagaj\u0105 one spe\u0142ni\u0107 wymagania dotycz\u0105ce … Continued<\/a><\/p>\n","protected":false},"author":26,"featured_media":128860,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":3,"_editorskit_typography_data":[],"_editorskit_blocks_typography":"","_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}"},"categories":[560],"tags":[],"yoast_head":"\n