Community
2 15228
HostiServer
2018-11-06 14:22

Прискорте свій сайт на WordPress легко: оптимізація бази даних

Оптимізація MySQL для WordPress: плагіни, phpMyAdmin та SQL

Оновлений контент, вперше опублікований у червні 2018 року

У центрі будь-якого сайту WordPress знаходиться база даних MySQL, яка зберігає пости, сторінки, коментарі користувачів, налаштування плагінів та тем. З часом, при додаванні нового контенту або рості трафіку, база накопичує зайві дані. Це сповільнює запити та завантаження сторінок, що негативно впливає на SEO та досвід користувачів. Оптимізація бази видаляє «сміття» та прискорює сайт. Почнімо з простих плагінів і перейдемо до ручного налаштування SQL. Правило №1: зробіть повну резервну копію. Використовуйте WP Database Backup або WP-DB-Backup перед будь-якими змінами.

Чому важлива оптимізація бази

Кожен перегляд сторінки запускає запити до бази даних. Якщо таблиці заповнені старими версіями постів, спамом або тимчасовими даними, навіть прості запити виконуються повільно. Затримки особливо помітні під час пікового трафіку, і Google PageSpeed Insights часто позначає це як проблему для Core Web Vitals.

Оптимізація також зменшує навантаження на сервер. На спільному хостингу це знижує ризик перевищення ресурсів, на VPS дозволяє ефективніше використовувати CPU та пам’ять. Підтримання бази в чистоті — ключ до стабільного та швидкого сайту.

Практичні методи (плагіни та SQL)

Можна автоматизувати за допомогою плагінів або чистити вручну. Для початку краще плагіни — безпечніше при наявності резервної копії.

WP-Optimize

Плагін WP-Optimize робить очищення простим. Встановіть та активуйте його через адмінку WordPress, відкрийте налаштування. Ви побачите опції для видалення спаму та непідтверджених коментарів, старих чернеток і ревізій постів, а також видалення зайвих пробілів у таблицях. Оберіть потрібне і запустіть оптимізацію. Після виконання можна деактивувати плагін.

Оптимізація бази WordPress з WP-Optimize

WP-Sweep

Плагін WP-Sweep від Lester Chan також ефективний. Після встановлення (Інструменти → Sweep) він показує статистику «сміття» в таблицях. Можна запускати повну очистку або поступово для контролю. Працює схоже на WP-Optimize і додає звіти.

Оптимізація MySQL з WP-Sweep

Оптимізація через phpMyAdmin

Якщо є доступ до хостинг-панелі (cPanel), використайте phpMyAdmin. Увійдіть, оберіть базу даних сайту (wp-config.php), відмітьте таблиці або «Check All», оберіть «Optimize table» у меню «With selected». Це виконує OPTIMIZE TABLE і зменшує фрагментацію, покращуючи швидкість.

Оптимізація таблиць у phpMyAdmin

Перед будь-якими змінами обов’язково зробіть резервну копію бази.

Ручні SQL-запити

Якщо комфортно працювати з SQL, можна очистити базу вручну. Завжди тестуйте на копії перед виконанням на живому сайті.

Видалення старих ревізій постів:

DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
LEFT JOIN wp_term_taxonomy d ON (b.term_taxonomy_id = d.term_taxonomy_id)
WHERE a.post_type = 'revision'
AND d.taxonomy != 'link_category';

Видалення спаму:

DELETE FROM wp_comments WHERE comment_approved = 'spam';

Видалення непідтверджених коментарів:

DELETE FROM wp_comments WHERE comment_approved = '0';

Видалення невикористаних тегів:

DELETE FROM wp_terms WHERE term_id IN (SELECT term_id FROM wp_term_taxonomy WHERE count = 0 );
DELETE FROM wp_term_taxonomy WHERE term_id NOT IN (SELECT term_id FROM wp_terms);
DELETE FROM wp_term_relationships WHERE term_taxonomy_id NOT IN (SELECT term_taxonomy_id FROM wp_term_taxonomy);

Видалення transient:

DELETE FROM wp_options WHERE option_name LIKE ('%_transient_%');

Пошук повільних MySQL-запитів

Повільні запити (декілька секунд) — часта проблема. Увімкніть slow_query_log у my.cnf:

slow_query_log = /var/log/mysql/mysql-wp-slow.log
long_query_time = 5

Перезапустіть MySQL. Запити довше 5 секунд будуть записані для аналізу та оптимізації.

Після оптимізації перевірте швидкість через Google PageSpeed Insights або GTmetrix. Якщо сайт все ще повільний, розгляньте CDN або зміну ОС сервера (Ubuntu, CentOS Stream).

Увага! Завжди робіть свіжу резервну копію перед оптимізацією. Можна використовувати WP Database Backup, WP-DB-Backup або панель хостингу.

FAQ

Чому база даних WordPress сповільнює сайт?
Накопичуються зайві дані — ревізії, спам, transient — і запити виконуються повільніше.
Як часто оптимізувати базу?
Залежить від активності: блог — раз на місяць, магазин — раз на тиждень.
Чи безпечно використовувати плагіни WP-Optimize і WP-Sweep?
Так, якщо резервні копії актуальні. Плагіни рекомендовані спільнотою і безпечні для звичайної оптимізації.
Що робити, якщо сайт повільний після оптимізації?
Перевірте хостинг — можливо, кращий VPS або виділений сервер. Також можна використовувати CDN та кешуючі плагіни.

Contents

VPS з підтримкою від

$19 95 / міс

Виділені сервери від

$80 / міс

CDN починаючи від

$0 / міс

 

Користуючись цим сайтом, ви погоджуєтеся на використання файлів cookies відповідно до нашої Політики Конфіденційності.