Оптимизация базы данных для Мадженто
Одна из особенностей Мадженто – это встроенная система логирования. Она преследует массу целей, основными из которых являются увеличение скорости обработки данных и отладка. В первом случае, с помощью записи определенных данных в таблицу базы данных, движок быстрее обрабатывает последующие запросы. Во втором случае, с отладкой, все тоже ясно – с помощью логов упрощается процесс нахождения ошибок в коде и функционировании движка. Логи отладки, в основном, записываются в системе по адресу var/log/. А для других логов используется база данных.
К сожалению, иногда полезный функционал начинает вредить другим параметрам системы. Например, при значительном увеличении объема логов в базе данных, скорость работы всего сайта на Magento может кардинально снизиться. В данной статье мы рассмотрим решение этой проблемы методом оптимизации базы данных.
Исходные данные (пример): на сайте размещено до 1000 товаров, количество посетителей в день – 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 хранит данные о посетителях сайта), подходите к выбору таблиц для оптимизации с полным осознанием.
Последние посты
Пыльцевые благовония — разновидности
Пыльцевые благовония, такие как в eleven:eleven также известные как агарбатти, это одна из наиболее распространенных… Читать далее
Приложения в айфоне, которые помогут организовать жизнь
Мы пользуемся своими смартфонами каждый день, часто даже не выпуская их из рук часами. В… Читать далее
Важные моменты в вопросе монетизации мобильных приложений
Количество загрузок мобильных приложений стремительно растет из года в год. Хотя более 90% всех загрузок… Читать далее
Фрезер для маникюра – профессиональный уход за ногтями
Маникюр в наше время стал неотъемлемой частью по уходу за собой, который придает ногтям аккуратный… Читать далее
Как выбрать игровую приставку?
Выбор игровой приставки является ответственным делом для любого геймера. Сегодняшний рынок предлагает множество моделей, каждая… Читать далее
Как выбрать подрядчика по SEO в Киеве?
Выбор подрядчика для seo-продвижения веб-ресурсов разных тематик в Киеве может стать сложной задачей из-за обилия… Читать далее