Оптимальное внедрение MySQL для начинающих
Введение
В процессе предоставления услуг хостинга мы реагируем на чаще всего встречающиеся оплошности, которые совершают юзеры при исследованию личных виртуальных серверов. Одним из "томных" мест для обычного веб-мастера считается работа с MySQL-сервером. Обычно исследование основ функционирования SQL и способов работы с базами этих проводится по литературе, из коей выбираются лишь злободневные на день чтения вещи - как соединиться с базой, как устроить запрос, как обновить информацию или же прибавить свежую запись в информационную базу и тому подобное.
Такой расклад, естественно, выделяет желательный итог - интерфейсы веб-сайта юзера в результате оказываются вставленными с информационной базой. Однако порой юзеры думают про то, как нормально трудится их база, как можнож улучшить происходящие при работе с MySQL процессы и каково станет функционирование виртуального сервера при приросшей перегрузке, "наплывах" юзеров в следствии, к примеру, "раскрутки" вебсайта.
Эта заметка может помочь Вам реструктуризировать работу с СУБД MySQL. Изложенный материал не претендует на детализированное описание оптимизации MySQL как говорится, а только направляет внимание на чаще всего производимые юзерами оплошности и сообщает про то, как их недопустить. Более досконально выяснить о тонкостях опции MySQL можнож на специальных страничках, гиперссылки на которые приведены в конце данной заметки.
Какие эти необходимо сохранять в MySQL
Не сильтесь поместить в информационной базы всю информацию, коя у Вас есть. Например, не надо беречь там иллюстрации, хоть MySQL именно это дозволяет. Помещая в информационную базу двоичные образы графических файлов, Вы исключительно замедлите работу собственного сервера. Прочитать файл с иллюстрацией с диска во много раз легче и, на взгляд употребляемых ресурсов, экономичнее, чем соединиться из скрипта к SQL, устроить запрос, обрести образ, подвергнуть обработке его и, выдав нужные http-заголовки, продемонстрировать гостю веб-сервера. Во втором случае операция выдачи рисунки востребует в пару раз более ресурсов процессора, памяти и диска. Также стоит не забывать про то, что присутствуют механизмы кэширования веб-документов, которые дозволяют юзеру беречь на трафике, а при динамической генерации контента Вы практически лишаете личных гостей данной комфортной полномочия.
Вместо иллюстраций гораздо лучше сохранять в MySQL информацию, на базе коей можнож генерить гиперссылки на статические картинки в динамически создаваемых скриптами документах.
Оптимизация запросов
В обстановках, как скоро реально потребуется обрести лишь явную порцию этих из MySQL, применяют ключ LIMIT для функции SELECT. Это может быть полезно, как скоро, к примеру, надо продемонстрировать эффекты поиска чего-нибудь в информационной базе. Допустим, в базе есть перечень продуктов, которые дает Ваш интернет-магазин. Выдавать весь перечень продуктов в необходимой группы немного негуманно относительно к юзеру - каналы взаимосвязи с web не у всех прыткие и выдача излишних 100 кб инфы нередко вынуждает юзеров провести не 1 минутку в предвкушении последствий загрузки странички. В этих обстановках информацию выдают дозами по, разрешен, 10 позиций. Неправильно делать подборку из базы всей инфы и фильтрацию вывода скриптом. Гораздо оптимальнее станет устроить запрос вида
select good, price from books limit 20,10
