Як полагодити таблицю в базі даних mysql

Якщо раптом, Ви виявите на своєму сайті помилки бази даних MySQL, не поспішайте відновлювати "Backup", спробуйте спочатку відремонтувати пошкоджену таблицю, використовуючи команду "myisamchk".

Як полагодити таблицю в базі даних mysql
Як правило при отриманні наступних помилок (нижче), вдале відновлення гарантовано в 99% випадків.

  • `Tbl _ ***. Frm 'is locked against change
  • Can not find file `tbl _ ***. MYI '(Errcode: ***)
  • Unexpected end of file
  • Record file is crashed
  • Got error *** from table handler

Ви запитаєте, як дізнатися пошкоджена таблиця бази даних або це щось інше?

Визначившись з ім'ям (wp_options) пошкодженої таблиці, запускаємо на сервері термінал, потім переходимо в папку, де MySQL зберігає свої файли, шлях за замовчуванням: / var / lib / mysql і потрібна вам база даних (aawru).

Як полагодити таблицю в базі даних mysql
Для доступу до сервера, я використовую програму WinSCP, підключившись, переходжу в потрібну мені базу даних і запускаю термінал.

1. Запускаю "Термінал".

2. Вводжу команду myisamchk -r wp_options.MYI (Замість "wp_options", підставте потрібну вам таблицю для відновлення).

3. Натискаю кнопку "Виконати".

Команда знаходить і виправляє помилки пошкодженої таблиці, якщо відновлення не відбулося повторіть, використовуючи команду myisamchk -o. Команда myisamchk має безліч опцій, які завжди можуть стати в нагоді.

Всі опції myisamchk

Всі опції myisamchk

Для того щоб отримати додаткову інформацію по команді, варто використовувати допомогу:

-s: тільки висновок помилок;
-v: висновок більшої кількості інформації;
-V: висновок версії і вихід;
-w: чекати, якщо таблиця заблокована.

-c: перевірка таблиць на помилки;
-е: дуже «груба» перевірка. Варто використовувати тільки в крайньому випадку, якщо в звичайному режимі помилки не виявляються;
-F: швидка перевірка, перевіряються тільки таблиці, які не закривалися правильно;
-З Перевіряти лише таблиць, які змінилися з часу останньої перевірки;
-f: автоматичний перезапуск myisamchk з опцією -r, є виявлені помилки;
-i: висновок статистики по перевіреним таблицями;
-m: полегшений режим перевірки, швидше, ніж звичайний, знаходиться 99,99% помилок;
-U: оновлення статусу: позначка таблиць як пошкоджених, якщо виявляються будь-які помилки;
-T: чи не позначати таблиці як перевірені.

-B: бекап файлу .MYD, «filename-time.BAK»;
-correct-checksum;
-е: спроба виправлення максимального числа рядків у файлі даних. Крім того, ця команда знаходить «сміттєві» рядки. Не варто використовувати цю команду, якщо ситуація не безнадійна;
-f: перезапис старих тимчасових файлів;
-r: виправляє майже всі, крім унікальних ключів, які насправді не є унікальними;
-n: примусова сортування, навіть, якщо тимчасовий файл виходить дуже великим;
-про: використання старого методу відновлення;
-q: швидке виправлення без модифікації файлу даних;
-u: розпакування файлу, запакованого myisampack.

Схожі статті