Оптимизация работы Mysql

Опубликовано: 31.10.2017

видео Оптимизация работы Mysql

MySQL. Оптимизируем запросы [GeekBrains]

Как добиться снижения нагрузки на MySQL сервер?

Для начала надо убедиться, что использование MySQL-сервера в каждой конкретной задаче актуально. Например, создавать базу данных, чтобы хранить в ней тексты статей, картинки или бинарные файлы - неправильно. Для этого следует создавать обычные файлы, а в MySQL, при необходимости, хранить каталог (список) данных файлов. Как показывает практика, многие не понимают этого и создают базы данных во много раз превышающие размеры сайта и создающие колоссальные загрузки при поиске данных или обычной выборке. Также необходимо выбрать хороший платный хостинг сайту . На бесплатных хостингах действуют значительные ограничения на использование MySQL сервера.



Если Вы точно уверены, что использование MySQL в Вашем случае оправдано - тогда следует перейти к оптимизации запросов. Прежде всего следует понимать, что наибольшая нагрузка создается при получении большого числа элементов из таблицы, поэтому основную часть задач следует перекладывать на PHP или Perl скрипты, не забывая создавать минимально требовательные запросы с максимальным количеством уточняющих условий. Например, Вам надо получить из таблицы элемент со значением параметра 'N' равным '5', для этого следует использовать запрос "SELECT * FROM table WHERE N=5;", а не использовать запрос "SELECT * FROM table;" и после этого в цикле сравнивать значения 'N'. SQL-запрос должен быть максимально чётким и узким, когда это позволяет специфика сайта.


Анализ производительности и оптимизация MySQL, Пётр Зайцев Percona

Далее попробуем углубиться в анализирование запросов. В MySQL существует оператор EXPLAIN, он служит для получения информации о SELECT-запросе. Если оператору SELECT предшествует EXPLAIN, то MySQL сообщит о том, как будет производиться обработка SELECT, и предоставит информацию о порядке и методе связывания таблиц. При помощи EXPLAIN можно выяснить, когда стоит снабдить таблицы индексами, чтобы получить более быструю выборку, использующую индексы для поиска записей. Подробнее о работе и выводе команды EXPLAIN Вы можете прочитать по адресу - http://www.mysql.ru/docs/man/EXPLAIN.html . Используя EXPLAIN перед сложными запросами, охватывающими несколько таблиц, можно получить полную информацию об обработке запроса SELECT и, проанализировав данные, изменить таблицы для ускорения быстродействия. Подробно на примере оптимизация таблиц рассматривается по ссылке, приведенной выше.

Также следует обратить внимание на INSERT, UPDATE и DELETE запросы. Не смотря на относительную редкость (по сравнению с SELECT) их использования, они также могут создавать высокую нагрузку на сервер. Советуем ознакомиться с практическими советами по ускорению работы оператора INSERT - http://www.mysql.ru/docs/man/Insert_speed.html . UPDATE, по сути, включает в себя запрос SELECT и INSERT, поэтому к нему актуальны те же методы оптимизации. Запрос DELETE в оптимизации, как таковой, не нуждается, можно лишь отметить тот факт, что для очищения таблицы целиком следует использовать оператор TRUNCATE TABLE, так как уничтожение каждого элемента по отдельности займет много времени.

Не надо обходить стороной вопрос структуры самих таблиц. Например, следует избегать типов VARCHAR или BLOB для всех столбцов. При использовании единичного столбца VARCHAR или BLOB Вы получите динамическую длину строки.

Соблюдение простых правил по оптимизации запросов и таблиц MySQL может значительно сократить время загрузки страниц сайта. Для более тщательного изучения вопроса оптимизации MySQL советуем обратиться к официальной документации на русском языке - http://www.mysql.ru/docs/man/MySQL_Optimisation.html .

3D стерео фильмы для 5D
    Зарплата ру
    Еженедельный журнал работа и зарплата вакансии в Москве выходит крупным тиражом в 100 тыс. экземпляров, имеет большую аудиторию читателей, среди которых люди с различным образованием, доходом и социальным

    Уголок покупателя
    По закону продавец обязан предоставить Книгу жалоб по требованию покупателя, или же покупатель может самостоятельно сделать в ней запись. На жалобу в Книге магазин должен письменно отреагировать в течение

    Лицевую дугу
    Приспособление создается из медицинской стали и состоит из двух металлических дуг: внутренней, которая крепится на зубах и располагается вдоль зубных рядов, а также внешней. Благодаря наличию ремешков

    Шкафы купе
    Еще несколько десятилетий назад мы и понятия не имели о таком удобном и эстетичном виде мебели, как шкаф-купе. Сегодня же большинство из нас просто не представляют себе: как можно было без него обходиться?

    I
    В последние годы доставка цветов на дом пользуется все большей популярностью. С одной стороны, у современных мужчин порой просто не хватает времени, чтобы сделать любимой женщине, матери или подруге достойный

    Вечерние платья на выпускной
    В преддверии сезона выпускных вечеров многие девушки озабочены поиском красивой и модной одежды, которая выгодно подчеркнет достоинства фигуры и поможет выглядеть на этом знаковом мероприятии настоящей

    Автобус в Крым из Харькова
    Собираясь путешествовать, задумываясь о поездке к родным и близким или направляясь в командировку, многие задумываются, какой выбрать маршрут и способ передвижения? Доехать до места назначения удобно,

    Качественные услуги печати рекламы
    Очевидно, что рекламу делают не для того, чтобы показать друзьям или выставить на конкурс. Реклама, в отличие от художественных произведений, не является самоцелью, она не объект любования – это вполне

    Сервіс кейс case
    Что такое кейсы? Этот вопрос задают, как правило, студенты, впервые столкнувшиеся с этим термином. Однако это понятие становится популярным в бизнес-сообществах. Перед тем, как ответить на вопрос о том,

    Дистанционное обучение по канадской системе
    Каждому родителю хочется, чтобы его ребёнок был самым счастливым, разносторонне развитым и успешным. А каждый подросток желает путешествовать. Сейчас открываются невероятные возможности объединить и

rss