</>
maximorum.com

Оптимізація MySQL для OpenCart: швидкість без зміни хостингу

D

Оптимізація MySQL для OpenCart: швидкість без зміни хостингу

Повільний інтернет-магазин — це не завжди проблема хостингу. Найчастіше причина — в неоптимізованих запитах до бази даних MySQL. Після правильного налаштування OpenCart-магазини, що вантажились 6–8 секунд, починають відповідати за 1,5–2 секунди — на тому самому сервері.

Аналіз slow query log MySQL та метрики продуктивності OpenCart

Де ховаються секунди

OpenCart виконує кілька десятків SQL-запитів на кожну сторінку каталогу. Якщо таблиці oc_product, oc_product_description і oc_product_to_category не мають правильних індексів — кожен запит робить повний скан таблиці. При 10 000+ товарах це критично для часу відповіді.

Що ми робимо

Наш чеклист оптимізації MySQL для OpenCart включає:

  • Складені індекси на колонки, що часто фігурують у WHERE та JOIN: product_id, status, category_id, language_id
  • Redis-кешування результатів SELECT-запитів замість застарілого query cache MySQL 5.x
  • Оптимізація my.cnf: innodb_buffer_pool_size, max_connections, slow_query_log
  • Видалення orphan-записів з oc_url_alias і oc_product_to_store, що накопичуються роками
  • EXPLAIN-аналіз повільних запитів через slow query log (поріг: 1 секунда)

PHP і OPcache

Паралельно вмикаємо OPcache для PHP 8.x і перевіряємо, що OpenCart зберігає кеш сесій у файловій системі, а не в базі даних. Це знімає ще 20–30% навантаження на MySQL без жодних змін у коді магазину.

Реальний результат

Для інтернет-магазину з 15 000 SKU та 500 відвідувачами на добу час відповіді сторінки категорії скоротився з 5,4 с до 1,8 с після двох годин роботи — без зміни тарифного плану хостингу.

Прискоримо ваш магазин?

Проводимо аудит продуктивності OpenCart: аналіз запитів, індексів і конфігурації сервера. Залиште заявку на maximorum.com — відповімо протягом одного робочого дня.