Dziś MySQL to jedno z najpopularniejszych rozwiązań wśród małych i średnich systemów zarządzania bazami danych. Jedną z zalet MySQL jest możliwość pracy z tabelami różnych typów. Jednym z nich jest MyISAM. Takie tabele świetnie nadają się do przechowywania często żądanych danych, ale jeśli ulegną awarii podczas procesu modyfikacji, można je łatwo uszkodzić. Dlatego często zdarza się, że trzeba przywrócić tabelę typu MyISAM.
Niezbędny
- - poświadczenia root na maszynie docelowej;
- - zainstalowany pakiet narzędzi administracyjnych serwera MySQL.
Instrukcje
Krok 1
Rozpocznij sesję z poświadczeniami użytkownika root na komputerze z działającym serwerem MySQL, na którym działa baza danych, która prawdopodobnie zawiera uszkodzone tabele. Jeśli możesz pracować bezpośrednio z komputerem docelowym, zaloguj się do konsoli tekstowej lub uruchom emulator terminala jako root. Jeśli masz zdalny dostęp SSH, użyj odpowiedniego programu klienckiego do nawiązania połączenia.
Krok 2
Zatrzymaj serwer bazy danych MySQL na maszynie docelowej. Uruchom polecenie zatrzymania usługi mysqld. Poczekaj na zakończenie procesu zamykania (będzie to sygnalizowane komunikatem diagnostycznym).
Krok 3
Utwórz kopię zapasową plików tabeli bazy danych, która posłuży do dalszej pracy. W takim przypadku wygodnie jest użyć menedżera plików. Przejdź do folderu zawierającego pliki tabeli. Ma on nazwę identyczną z nazwą bazy danych i znajduje się w katalogu db, który znajduje się w katalogu głównym serwera (do którego adresowana jest zmienna chroot pliku konfiguracyjnego my.cnf). Skopiuj wszystkie pliki z rozszerzeniami MYD i MYI z bieżącego folderu do jakiegoś katalogu tymczasowego.
Krok 4
Sprawdź co najmniej jedną tabelę bazy danych pod kątem uszkodzeń. W bieżącym katalogu uruchom polecenie myisamchk z opcją -c (lub bez żadnych opcji) w celu normalnego skanowania. Użyj opcji -m do starannego testowania, a opcji -e do bardzo starannego testowania. Jako ostatni parametr podaj nazwę lub maskę nazw plików do przetworzenia. Na przykład: myisamchk -c test_table. MYImyisamchk *. MYI
Krok 5
Odzyskaj stół lub stoły, w których znaleziono uszkodzenie. Uruchom polecenie myisamchk z opcją -r w celu normalnego odzyskiwania lub z opcją -o w celu łagodnego odzyskiwania. Jako ostatni parametr, podobnie jak w poprzednim kroku, przekaż nazwę lub maskę nazwy tabel docelowych. Na przykład: myisamchk -o test_table. MYI
Krok 6
Uruchom serwer MySQL. Uruchom usługę mysqld start polecenie.
Krok 7
Zakończ sesję. Wpisz polecenie exit i naciśnij Enter.