Jako jedna z wiodących swobodnie dostępnych baz danych, MySQL jest popularnym wyborem dla różnego rodzaju aplikacji internetowych. Będąc narażonym na działanie Internetu, twoja aplikacja jest oczywiście narażona na złośliwe ataki. Jeśli twój serwer zostanie przejęty, w najlepszym razie będziesz musiał ponownie zainstalować swoją aplikację; w najgorszym wypadku możesz całkowicie stracić dane. Będziesz także w sytuacji, w której musisz przenieść bazę danych z jednego serwera na drugi.
Do czego służy mysqldump?
The mysqldump narzędzie obejmuje cię w obu tych sytuacjach. Jego podstawową funkcją jest pobranie bazy danych MySQL i "zrzutu" jej jako pliku tekstowego. Ale nie tylko plik tekstowy … plik jest zestaw instrukcji SQL. Te instrukcje, po wykonaniu, ponownie skonstruują bazę danych do dokładnego stanu, w jakim znajdowała się podczas wykonywania zrzutu.
Więc możesz użyć mysqldump aby wyeksportować bazę danych. Mogą to być na przykład kopie zapasowe lub przenoszenie bazy danych na nowy host. W każdym razie, w pewnym momencie import plik tekstowy z powrotem na serwer bazy danych MySQL. Wykona wszystkie instrukcje SQL w pliku, który odbuduje twój DB do jego pierwotnego stanu. Ta część w rzeczywistości nie korzysta z mysqldump polecenie, ale nie byłoby to możliwe bez tego narzędzia!
Dokumentacja MySQL zawiera listę innych metod tworzenia kopii zapasowych, ale wszystkie mają swoje wady:
- Hotcopying a DB z MySQL Enterprise to świetny sposób, aby osiągnąć te kopie zapasowe … jeśli nie masz nic przeciwko metce Enterprise.
- Kopiowanie katalogów danych DB może być trudne, jeśli przemieszczasz się pomiędzy systemami operacyjnymi, ponieważ ich miejsca docelowe będą inne.
- Eksportowanie do rozdzielonego pliku tekstowego da ci zawartość, ale będziesz musiał sam odtworzyć strukturę. I lepiej załatw to dobrze …
- Często można tworzyć kopie zapasowe baz danych z programów GUI, takich jak MySQL Workbench. Jest to jednak proces ręczny, tzn. Nie jest to coś, co można skryptować lub dołączyć do zadania wsadowego.
Instalowanie narzędzia mysqldump
Jeśli interesuje Cię ten artykuł, prawdopodobnie masz już zainstalowany MySQL. Jeśli tak jest, to dobra wiadomość - już ją masz mysqldump! Jeśli nie, możesz po prostu zainstalować MySQL w standardowy sposób dla swojego systemu operacyjnego.
W przypadku Windows, zapoznaj się z naszymi instrukcjami dotyczącymi instalacji MySQL na Windows 7 (proces instalacji wciąż jest bardzo podobny). Podobnie na macOS, zobacz nasze instrukcje instalacji MySQL na MacOS 10.7 (znowu starsze, ale nadal możliwe). Użytkownicy systemów Linux z systemem Ubuntu mogą użyć poniższego polecenia, aby zainstalować klienta MySQL i narzędzia:
sudo apt zainstaluj mysql-client Po zainstalowaniu możesz użyć mysqldump aby uzyskać pełną kopię zapasową bazy danych. mysqldump -h nazwa hosta lub adres IP hosta -u nazwa użytkownika bazy danych -p nazwa bazy danych> db_backup.sql
Przerwijmy to polecenie nieco: Po zakończeniu będziesz mieć plik .SQL. To tylko plik tekstowy zawierający instrukcje SQL. Możesz otworzyć go w dowolnym edytorze tekstów, aby sprawdzić zawartość. Patrząc na eksport z bazy danych WordPress, można zobaczyć, jak te pliki są połączone. Plik podzielony jest na sekcje. Na powyższym obrazku widać pierwszą sekcję ustawiającą tabelę dla komentarzy WordPress. Druga sekcja odtwarza następnie zawartość (tj. Rekordy komentarzy), która znajdowała się w tych tabelach. Gdy przejdziesz do ponownego zaimportowania zrzutu MySQL ponownie, polecenie będzie działać poprzez plik, wykonując instrukcje i ponownie budując bazę danych w taki sposób, w jaki był. Jak to zrobić? Spójrzmy. Zanim będziesz mógł to zrobić, będziesz potrzebować bazy danych, która została już utworzona, i mieć poprawną nazwę użytkownika i hasło. Powinieneś również mieć wszystkie uprawnienia do bazy danych. (Ściśle mówiąc nie potrzebujesz DOTACJA uprawnienia, ale łatwiej jest je po prostu przyznać.) Szczegóły na temat uprawnień do bazy danych można znaleźć w tym artykule. Aby ponownie zaimportować dane, wykonaj następujące kroki: Kiedy skończysz, zobaczysz długą listę komunikatów informujących o wykonywaniu instrukcji SQL. Miej oko na błędy, ale jeśli masz odpowiednie uprawnienia, powinieneś być w porządku, ponieważ jest to pusta baza danych. Po zakończeniu procesu będziesz mieć duplikat oryginalnej bazy danych. Możesz to sprawdzić, wykonując kolejny zrzut i porównując dwa wyjścia. Przyzwoity edytor tekstu będzie w stanie zrobić to za Ciebie lub dedykowane narzędzie * diff *, takie jak pokazane na poniższym obrazku: Są tylko dwie różnice między tymi plikami, co reprezentują czerwone linie u góry i u dołu prawego paska przewijania. Pierwsza to linia zawierająca nazwę bazy danych i spodziewamy się, że będzie inna, ponieważ nazwaliśmy je inaczej. Drugim, końcowym końcem jest znacznik czasu dla pliku zrzutu. Oczekujemy też, że będzie inaczej, ponieważ odtworzyliśmy drugą bazę danych po pierwszej. W przeciwnym razie pliki są dokładnie takie same, co oznacza, że bazy danych, które je wygenerowały, również są! Wyodrębnianie zrzutu MySQL

Importowanie pliku zrzutu MySQL






