База даних WordPress поступово накопичує ревізії, журнали, тимчасові записи, залишки видалених плагінів і службові дані. Коли її обсяг зростає без контролю, резервні копії створюються довше, адмінпанель сповільнюється, а запити можуть перевантажувати сервер. Проте видаляти таблиці навмання небезпечно: одна помилка здатна зупинити сайт або знищити замовлення.
Які таблиці займають найбільше місця
Спочатку потрібно виміряти розмір таблиць через панель хостингу, phpMyAdmin або консольний інструмент. Назви з префіксом posts, postmeta, options, comments і actionscheduler часто виростають найбільше, але сам розмір ще не означає проблему. Для магазину велика таблиця замовлень може бути цілком нормальною.
З’ясуйте, який компонент створює дані та чи потрібні вони для роботи, звітності або відновлення історії. Особливо обережно ставтеся до нестандартних префіксів і таблиць плагінів: навіть деактивований модуль може зберігати важливі налаштування.
Ревізії, логи та тимчасові дані
WordPress зберігає попередні версії записів, щоб редактор міг повернутися до старого тексту. На сайті з частими правками ревізій накопичується багато. Їх можна обмежувати, але варто залишити кілька останніх версій і не очищати все без оцінки редакційного процесу.
Логи безпеки, статистики, поштових відправлень і фонових завдань також можуть рости роками. Транзієнти зазвичай тимчасові, однак прострочені записи не завжди видаляються вчасно. Спочатку визначте власника кожного масиву даних, налаштуйте строк зберігання, а вже потім очищайте.
Резервна копія перед очищенням
Перед будь-якими змінами створіть повний дамп бази та копію файлів сайту. Збережіть архів поза тим самим сервером і перевірте, що він завантажується та відкривається. Для активного магазину або сервісу оберіть період низької активності, щоб після відновлення не втратити нові замовлення.
Зафіксуйте поточний розмір таблиць, версії WordPress і плагінів, а також час початку робіт. Якщо база вже пошкоджена або втрачена, звичайне очищення не допоможе; окремий матеріал пояснює, як повернути сайт, коли збереглися файли, але втрачено базу даних.
Безпечна оптимізація бази
Працюйте поетапно. Видаліть очевидно прострочені службові записи штатними засобами відповідного плагіна, потім перевірте сайт і лише після цього переходьте до наступної групи. SQL-запити запускайте спочатку в режимі вибірки, щоб побачити, які рядки вони зачеплять.
Після очищення оптимізуйте таблиці, перевірте журнали помилок, форми, авторизацію, кошик, пошук і фонові задачі. Порівняйте час відповіді та розмір резервної копії до і після робіт. Якщо велика таблиця швидко виростає знову, потрібно усунути джерело — неправильне налаштування, збій cron або надмірне логування.
Для регулярного контролю визначте строк зберігання журналів і графік резервних копій. Це входить у системний догляд; корисний перелік дає стаття про те, що входить у технічну підтримку сайту. Якщо структура бази незрозуміла, залучіть фахівця з WordPress: вартість обережної діагностики значно нижча за відновлення видалених даних.