MySQL

Краткий обзор некоторых возможностней MySQL. Советы по оптимизации.

1)Во всех версиях 3.хх не поддерживается ссылочная целостность и вложенные запросы(как это обойти-рецепт 6). По первичному ключу mysql автоматически создает индекс.
Для других атрибутов можно создать дополнительные индексы. Индекс создается вместе с таблицей —
create table [имя_таблицы] (… ,index|key [имя_индекса] (аттрибут1,…))
причем служебные поля key и index — синонимы. Начиная с версии 3.22 индекс можно создать и отдельно —
create index [имя_индекса] on [имя_таблицы] (аттрибут1,…).
Обычно дополнительные индексы, создаются для ускорения процесса выборки из базы данных. При его создании объем таблицы увеличивается, поэтому если скоростные параметры вас устраивают, то индекс создавать не нужно. Если скорость неприемлима, индекс добавляется для атрибутов указанных в запросе после конструкции where. Читать далее »

Оптимизация запросов в MySQL

Оптимизация – это изменение системы с целью повышения ее быстродействия.
Оптимизацию работы с БД можно разделить на 3 типа:

* оптимизация запросов
* оптимизация структуры
* оптимизация сервера.

Рассмотрим подробнее оптимизацию запросов.

Оптимизация запросов — наиболее простой и приводящий к наиболее высоким результатам тип оптимизации. Читать далее »

Работа с MySQL. Деревья

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

Структуру данных лучше взять общепринятую — в записи сообщения или рубрики форума содержится идентификатор родителя. Для организации вывода дерева напрашивается рекурсивная функция. Именно так сделано в Phorum’е. Файл include/multi-threads.php содержит функцию thread, которая строит вызывается для каждого корневого сообщения и рекурсивно вызывает себя для ответов на них: Читать далее »

MySQL — “зеленым” админам

Данная статья не является полным руководством по администрированию mysql-сервера, здесь скорее представлены первичные, самые необходимые данные для новичков. А посему рассматриваться будет сервер для ОС windows, хотя большинство команд справедливы и для *nix-систем. В работе используется в основном консоль, т.к. команды, вводимые в консоли, можно легко перенести, допустим, в web-интерфейс (например, в php для этого существуют специальные функции).
Читать далее »

Классы в MySQL

Вступление

Никто точно не знает почему, но mysql и php в большинстве web-проектов почти всегда используются вместе. Вроде разработчики php включили поддержку и других баз данных, да и mysql можно использовать не только вместе с php. А может просто провайдеры стремясь снизить цену хостинга и привлечь клиентов, включали на серверах поддержку php и mysql и это стало традицией?..
Читать далее »

Используем базу MySQL

mysql — Система Управления Базами Данных (СУБД). Основное отличие от всех остальных СУБД это то, что она является бесплатной. В силу того, что mysql бесплатна, она поддерживается очень многими хостинг провайдерами.

Здесь я расскажу как связать php и mysql т.е. как получить данные из базы данных mysql в php скрипт. Читать далее »

Резервное копирование баз MySQL

Вы работаете над веб-проектом, в котором используется СУБД MySQL. Конечно, каждый серьезный проект предполагает, что периодически будет создаваться резервная копия всех данных, используемых в работе. Это де факто стандартный подход. Более того, без этого невозможно гарантировать посетителям сайта бесперебойность работы Вашего ресурса. В случае, если сайт предоставляет коммерческие услуги, наличие резервного копирования является просто-таки жизненной необходимостью.

Вообще, почти все хостинг-провайдеры производят резервное копирование всех файлов пользователей. Однако, не стоит забывать о том, что провайдеры делают backup, в основном, для себя, на случай аварии у себя. Именно по этой причине пользователи в условиях хостинга могут, конечно, рассчитывать на восстановление в случае удаления каких-то данных по вине самого пользователя, но вовсе не факт, что провайдер сделает восстановление MySQL-базы сразу по получению запроса. Лучше делать для себя копию и в случае чего ее использовать. Можно даже периодически копировать этот свой backup на другую, не провайдерскую машину — так надежнее, на всякий случай. Читать далее »

Оптимальное использование MySQL

Введение

В процессе предоставления услуг хостинга мы обращаем внимание на наиболее часто встречающиеся ошибки, которые совершают пользователи при разработке своих виртуальных серверов. Одним из «тяжелых» мест для типичного веб-мастера является работа с MySQL-сервером. Обычно изучение принципов функционирования SQL и методов работы с базами данных ведется по литературе, из которой выбираются только актуальные на момент чтения вещи — как соединиться с базой, как сделать запрос, как обновить информацию или добавить новую запись в базу данных и так далее.

Читать далее »

Краткий обзор некоторых возможностей MySQL. Советы по оптимизации.

Статья будет полезна как новичкам, так и профессионалам. Первые получат сведения об основных возможностях MySQL, без чтения документации. А уже имея представление о MySQL, можно обратится к соответствующим пособиям, для более детального изучения заинтересовавшей возможности. Для последних будет полезно узнать о некоторых способах проектирования баз данных и оптимизации.
Статья будет состоять из пунктов, назовем их рецептами. Автор попытался отсортировать их, для более удобного чтения. Некоторые рецепты, универсальны и подходят для всех СУБД. Вы можете читать их в любом порядке, пропуская то, что уже хорошо знаете.
Для того чтобы исключить не однозначную трактовку основных терминов, на которые опирается вся теория реляционных баз данных, в конце статьи приведен небольшой словарик. Читать далее »

О грамотном использовании БД MySQL

Многие мои друзья и знакомые часто спрашивают меня о том, как устроен мой сайт (www.protoplex.ru), сколько у меня таблиц в базе данных, как я храню данные и по каким полям веду поиск. Я, конечно, не выдаю все свои государственные тайны, но всегда понимаю причину таких вопросов и пытаюсь помочь людям построить быструю и надежную базу данных — т.е. тщательно продумать структуру БД таким образом, чтобы при увеличении нагрузки или объема таблиц динамический веб-сайт не превратился в тормозное усмертие. А ведь многие новички (веб-строители) даже не догадываются о том, что крупные динамические сайты тормозят вовсе не из-за нагрузки скриптов на процессор, а в основном из-за неоптимизированного или дохленького MySQL-сервера. При этом во многом все зависит от того, как устроена ваша база данных. Читать далее »