Astăzi MySQL este una dintre cele mai populare soluții printre sistemele de gestionare a bazelor de date mici și mijlocii. Unul dintre avantajele MySQL este capacitatea de a lucra cu tabele de diferite tipuri. Unul dintre ei este MyISAM. Astfel de tabele sunt excelente pentru stocarea datelor solicitate frecvent, dar dacă nu reușesc în timpul procesului de modificare, pot fi ușor deteriorate. Prin urmare, există adesea cazuri în care trebuie să restaurați un tabel de tip MyISAM.
Necesar
- - acreditări root pe mașina țintă;
- - pachetul instalat de utilitare de administrare a serverului MySQL.
Instrucțiuni
Pasul 1
Porniți o sesiune cu acreditările utilizatorului root pe o mașină cu un server MySQL funcțional care rulează o bază de date despre care se crede că are tabele corupte. Dacă puteți lucra direct cu computerul țintă, conectați-vă la o consolă de text sau rulați un emulator de terminal ca root. Dacă aveți acces SSH de la distanță, utilizați un program client adecvat pentru a face conexiunea.
Pasul 2
Opriți serverul de baze de date MySQL pe mașina țintă. Rulați comanda service mysqld stop. Așteptați finalizarea procesului de oprire (acest lucru va fi indicat printr-un mesaj de diagnosticare).
Pasul 3
Creați o copie de rezervă a fișierelor tabelului bazei de date, care va fi folosită pentru lucrări ulterioare. În acest caz, este convenabil să utilizați managerul de fișiere. Navigați la folderul care conține fișierele tabelului. Are un nume identic cu numele bazei de date și se află în directorul db, care se află în directorul rădăcină al serverului (adresat de variabila chroot a fișierului de configurare my.cnf). Copiați toate fișierele cu extensii MYD și MYI din folderul curent într-un director temporar.
Pasul 4
Verificați dacă una sau mai multe tabele de baze de date nu sunt deteriorate. În directorul curent, rulați comanda myisamchk cu opțiunea -c (sau fără opțiuni deloc) pentru o scanare normală. Utilizați opțiunea -m pentru testarea atentă și opțiunea -e pentru testarea mai atentă. Ca ultim parametru, specificați numele sau masca numelor fișierelor care urmează să fie procesate. De exemplu: myisamchk -c test_table. MYImyisamchk *. MYI
Pasul 5
Recuperați masa sau tabelele în care s-a găsit paguba. Rulați comanda myisamchk cu opțiunea -r pentru recuperare normală sau opțiunea -o pentru recuperare ușoară. Ca ultim parametru, ca la pasul anterior, treceți numele sau masca de nume a tabelelor țintă. De exemplu: myisamchk -o test_table. MYI
Pasul 6
Porniți serverul MySQL. Rulați comanda de serviciu mysqld start.
Pasul 7
Încheiați sesiunea. Introduceți comanda exit și apăsați Enter.