Dnes je MySQL jedním z nejpopulárnějších řešení mezi malými a středními systémy správy databází. Jednou z výhod MySQL je schopnost pracovat s tabulkami různých typů. Jedním z nich je MyISAM. Takové tabulky jsou skvělé pro ukládání často požadovaných dat, ale pokud během procesu úprav selžou, mohou být snadno poškozeny. Proto často existují případy, kdy potřebujete obnovit tabulku typu MyISAM.
Nezbytné
- - pověření root na cílovém počítači;
- - nainstalovaný balíček nástrojů pro správu serveru MySQL.
Instrukce
Krok 1
Zahajte relaci s přihlašovacími údaji uživatele root na počítači s fungujícím serverem MySQL, na kterém je spuštěna databáze, o níž se předpokládá, že má poškozené tabulky. Pokud můžete pracovat přímo s cílovým počítačem, přihlaste se do textové konzoly nebo spusťte emulátor terminálu jako root. Pokud máte vzdálený přístup SSH, proveďte připojení pomocí příslušného klientského programu.
Krok 2
Zastavte databázový server MySQL na cílovém počítači. Spusťte příkaz mysqld stop služby. Počkejte na dokončení procesu vypnutí (bude to indikováno diagnostickou zprávou).
Krok 3
Vytvořte záložní kopii souborů databázové tabulky, která bude použita pro další práci. V tomto případě je vhodné použít správce souborů. Přejděte do složky obsahující soubory tabulky. Má stejný název jako databáze a je umístěn v adresáři db, který je umístěn v kořenovém adresáři serveru (adresován proměnnou chroot konfiguračního souboru my.cnf). Zkopírujte všechny soubory s příponami MYD a MYI z aktuální složky do dočasného adresáře.
Krok 4
Zkontrolujte poškození jedné nebo více databázových tabulek. V aktuálním adresáři spusťte příkaz myisamchk s volbou -c (nebo vůbec bez voleb) pro normální skenování. Pro pečlivé testování použijte volbu -m a pro-pečlivé testování volbu -e. Jako poslední parametr zadejte název nebo masku názvů souborů, které mají být zpracovány. Například: myisamchk -c test_table. MYImyisamchk *. MYI
Krok 5
Obnovte stůl nebo tabulky, kde bylo zjištěno poškození. Spusťte příkaz myisamchk s volbou -r pro normální obnovení nebo volbou -o pro jemné obnovení. Jako poslední parametr, stejně jako v předchozím kroku, předejte název nebo masku názvu cílových tabulek. Například: myisamchk -o test_table. MYI
Krok 6
Spusťte server MySQL. Spusťte příkaz mysqld start služby.
Krok 7
Ukončete relaci. Zadejte příkaz exit a stiskněte klávesu Enter.