Оптимізація бази даних для Мадженто
Одна з особливостей Мадженто – це вбудована система логування. Вона переслідує масу цілей, основними з яких є збільшення швидкості обробки даних та налагодження. У першому випадку, за допомогою запису певних даних в таблицю бази даних, двигун швидше обробляє наступні запити. У другому випадку, з налагодженням, все теж зрозуміло – за допомогою логів спрощується процес знаходження помилок в коді і функціонуванні двигуна. Логі налагодження, в основному, записуються в системі за адресою var/log/. А для інших логів використовується база даних.
На жаль, іноді корисний функціонал починає шкодити іншим параметрам системи. Наприклад, при значному збільшенні обсягу логів в базі даних, швидкість роботи всього сайту на Magento може кардинально знизитися. В сьогоднішній статті ми розглянемо рішення цієї проблеми методом оптимізації бази даних.
Вихідні дані (приклад): на сайті розміщено до тисячі товарів, кількість відвідувачів в день – 200, кількість зареєстрованих користувачів – до 100. При таких вихідних даних, без оптимізації бази і по самим грубим підрахунками, обсяг вашої бази даних кожен місяць буде збільшуватися на 300Мб.
А тепер порахуйте, скільки буде важити ваша база даних через 1 рік? Тепер прикиньте в умі, як це відобразиться на швидкості сайту. Думаю, що результат вас не влаштує. Тому, приступимо до вирішення даної задачі.
Для початку переконаємося, що в системі увімкнено автоматичне очищення логів (за замовчуванням воно вимкнено).
Зайдіть в консолі Система – Конфігурація (System > Configuration). Потім в лівому меню перейдіть в закладку Розширені – Система (Advanced – System).
У полі Включити очистку логів (Enable Log Cleaning) – виберіть Так.
І в полі Періодичність (Frequency) – виберіть бажану частоту очищення (в основному Щотижня буде достатньо).
Іноді виконання 1 пункту не призводить до потрібних результатів. Тому, ми додатково розглянемо 2 пункт оптимізації – очищення бази даних вручну. Але приступайте до цього пункту акуратно, і тільки в тому випадку, якщо ви впевнені у своїх діях!
Отже, приступимо. Найпростіше таку операцію робити у веб-додатках для адміністрування баз даних (наприклад, як у нашому випадку, в phpMyAdmin).
- Заходимо в phpMyAdmin
- Відкриваємо потрібну базу даних
- Вибираємо потрібні таблиці, проставивши навпроти них галочки
- І натиснувши в полі З зазначеними (With Selected) – Очистити (Empty). Будьте уважні: ми очищаємо таблиці, але ні в якому разі не видаляємо!
- Підтверджуємо операцію натиснувши Так у спливаючому вікні попередження.
Які таблиці можна очищати таким чином і з мінімальним ризиком:
core_session dataflow_batch_export dataflow_batch_import log_customer log_quote log_summary log_summary_type log_url log_url_info log_visitor log_visitor_info log_visitor_online report_viewed_product_index report_compared_product_index report_event
Після операції Очищення, бажано провести операцію Оптимізації. Для цього перейдіть на вкладку Структура у верхній частині сторінки PhpMyAdmin.
Виберіть ті ж таблиці, що і в попередньому кроці, але тепер в полі З зазначеними (With Selected) виберіть Оптимізація (Optimize).
От і все! Тепер можете оцінити приріст продуктивності вашого сайту.
Важливо!
Щоб ваш сайт завжди був на висоті – намагайтеся оптимізувати базу регулярно (хоча б раз на місяць).
Оскільки очищення таблиць видаляє певні статистичні дані (наприклад, таблиця log_visitor зберігає дані про відвідувачів сайту), підходьте до вибору таблиць для оптимізації з повним усвідомленням.
Останні пости
Чи варто купувати MacBook Air 13 M1: стислий огляд
Макбук Ейр — культова лінійка портативних комп'ютерів від Apple. Усі пристрої відрізняються витонченим дизайном, компактним… Читати далі
Просування в Інтернеті – 10 найбільш дієвих SEO тактик
Якщо ви власник веб-сайту, ви не можете дозволити собі нехтувати SEO. Окрім основ просування та… Читати далі
Які товари найбільш маржинальні
Високомаржинальні товари – це та категорія, яка забезпечує підприємству найвищий рівень прибутку через значну різницю… Читати далі
Як працює рішення SD-WAN: Основи технології та сфери застосування
У сучасному світі, де бізнеси намагаються вдосконалити свої мережі та забезпечити безперервний доступ до додатків… Читати далі
Які строки варто прописати у договорі про розробку програмного забезпечення, щоб зробити процес роботи комфортним та передбачуваним?
Чітке визначення термінів проекту формує очікування, зменшує ризик порушення дедлайнів та посилює продуктивність співпраці між… Читати далі
Комп’ютер: недорогий і функціональний водночас
Важко уявити собі роботу, розваги, спілкування та дозвілля без комп'ютера. Він допомагає у різних сферах… Читати далі