Несподівана помилка таблиці бази даних WordPress [Виправлення WordPress]
Два дні тому, з нізвідки, певна таблиця в WordPress на hongkiat.com пошкоджена. "wp_commentsТаблиця бази даних WordPress розбилася без ознак, попереджень і повідомлень про помилки. Як же я дізнався? Ось симптоми:
- Якщо ви спробуєте створити резервну копію бази даних, ви отримаєте це повідомлення про помилку - wp_comments позначений як розбитий і повинен бути відновлений при використанні LOCK TABLES
- Віджет "Останні коментарі" виглядає порожнім.
- Найкращий віджет-коментатор виглядає порожнім.
- Відправлений коментар не буде записаний у БД, тому не буде показано.
- Розділ коментарів у WP Admin має нульові записи.
Після пошуку в Інтернеті високих і низьких в надії знайти подібні випадки, щоб допомогти мені визначити і вирішити проблему, я в кінцевому підсумку нічого. Так що я спробував свій шлях і, на щастя, мені вдалося вирішити його. Я думав, що написання запису не тільки допоможе тим, хто постраждав, але й нагадаю, напевно, у випадку, якщо я знову потрапив до цієї помилки в майбутньому.
Виправлення / Рішення
Щоб виправити це, ви повинні мати доступ до бази даних WordPress, або через PhpMyAdmin або Secure Shell (SSH). Більшість облікового запису хостингу поставляється з phpMyAdmin, але будь-який з цих варіантів має бути надзвичайно обережним, оскільки ви маєте справу з базою даних. Будь-який неправильний хід призведе до втрати більшої кількості даних.
PhpMyAdmin
У PhpMyadmin виберіть базу даних WordPress і знайдіть таблицю помилок. У моєму випадкуwp_comments'таблиця. Перевірте його та прокрутіть до кінця і шукайте "З вибранимвипадаючого списку. Виберіть Ремонтний стіл і все має бути добре.
Безпечна оболонка
- Увійдіть до своєї оболонки
- Введіть 'mysql -u ім'я користувача -стор name_name'для доступу до баз даних
- Введіть "показувати бази даних"; для перегляду всіх баз даних
- Введіть "use database_name;щоб залучити базу даних
- Введіть "показувати таблиці;', щоб показати всі таблиці в базі даних
- Введіть "перевірити таблицю wordpress_table_name', щоб перевірити, що це пошкоджена таблиця
- Виправити це за допомогою "ремонт таблиці wordpress_table_name'
- Введіть "перевірити таблицю wordpress_table_name'знову, щоб переконатися, що це виправлено
Кроки 3 і 5 не потрібні, якщо ви знайомі з базами даних і таблицями. Сподіваюся, що це допомагає.