При создании СУБД MySQL разработчики руководствовались тремя фундаментальными принципами: высокая производительность, высокая надежность и простота использования. Строгое следование этим трем принципам привело к появлению реляционной СУБД, которая, являясь недорогой, обладает развитыми сервисами, соответствует стандартам, кроме того, легко расширяема, быстра и эффективна - все это делает СУБД MySQL отличным инструментом как для разработчиков, так и для администраторов при создании, ведении и использовании сложных программных приложений.
А теперь обсудим наиболее выдающиеся возможности СУБД MySQL.
Скорость
В реляционных СУБД скорость - это время, необходимое для выполнения запроса и возвращения результатов обработки запроса пользователю. Она решает все. Даже самые активные критики СУБД MySQL вынуждены признать, что она работает очень быстро, иногда на порядок быстрее, чем аналогичные СУБД, конкурирующие с MySQL на рынке. Показатели производительности, имеющиеся на Web-узле MySQL, показывают, что по производительности она превышает фактически все существующие на данный момент СУБД, включая такие известные коммерческие СУБД, как Microsoft SQL Server 2000 и IBM DB2. Из приведенной ниже врезки можно узнать подробнее о "достижениях" СУБД MySQL в области производительности.
На заметку
Полные результаты тестов производительности можно найти на странице http://www. eweek.com/article2/0,3959,293,00.asp.

Производительность СУБД
Частично причина необычной производительности СУБД MySQL кроется в ее многопотоковой архитектуре, позволяющей осуществлять параллельный доступ к базе данных большому количеству пользователей. Эта многопотоковая архитектура является базовым механизмом СУБД MySQL, она позволяет нескольким клиентам осуществлять одновременное чтение из одной и той же базы данных, обеспечивая при этом мощный прирост производительности. Дерево кода СУБД MySQL также разбито в модульном, многоуровневом стиле, с минимальной избыточностью и специальными оптимизаторами для выполнения таких задач, как объединение и индексация.
Кроме того, разработчики СУБД MySQL с самого начала не предусматривали некоторые возможности, которые могли бы повлечь за собой деградацию производительности, как это случилось на конкурирующих СУБД. Это транзакции, ссылочная целостность и хранимые процедуры. (Эти возможности обычно приводят к усложнению самого сервера и в результате влияют на его производительность.) Однако постоянные просьбы пользователей о включении таких возможностей, привели к компромиссному решению: начиная с версии 3.23.34, СУБД MySQL включают поддержку механизма транзакций, но при этом пользователи имеют возможность принятия решения об их включении (при определенной потере производительности) или исключить такой механизм (продолжая работать на пике эффективности). Этот же выбор может быть произведен на табличном уровне, что позволяет осуществлять тонкую оптимизацию в целях получения максимальной производительности.
Наконец, СУБД MySQL 4.0 имеет новую возможность кэширования запросов, которая позволяет существенно повысить производительность с помощью кэширования результатов частых запросов, возвращая пользователю данные из кэш-памяти, не выполняя при этом повторного запроса. (В таких СУБД, как Oracle, кэшируется план выполнения запроса, а не результаты выполнения запроса. Поэтому ей необходимо при каждом выполнении запроса выполнить запрос, включая объединения, и при каждом выполнении запроса сделать повторную выборку результатов запроса.) Рабочие характеристики СУБД MySQL свидетельствуют о том, что эта особенность повышает производительность СУБД MySQL более чем на 200%, причем никакого вмешательства со стороны пользователя при этом не требуется.

Надежность
Что касается СУБД, то даже выше, чем скорость выполнения и производительность, ценится высокая надежность. О СУБД MySQL можно сказать, что система строилась из расчета обеспечения максимальной надежности и готовности, она была протестирована с использованием критических приложений, обрабатывающих большое количество данных. Благодаря большому количеству пользователей СУБД MySQL во всем мире, быстро определяются и устраняются ошибки в программном коде, программное обеспечение тестируется на самых разных платформах. Это позволило создать программное обеспечение, которое практически лишено ошибок. Тем не менее каждый новый выпуск СУБД MySQL проходит этап внутренней отладки, при котором тестируются все возможности. Этот этап также включает тестирование на предмет наличия ранее обнаруженных ошибок и так называемый инструментарий crash me, главнейшей задачей которого является оценка максимальных возможностей системы.
Простота использования
СУБД MySQL настолько проста в использовании, что даже новичок может освоить работу с ней за несколько часов. Программное обеспечение поддерживается детализированным руководством и большим количеством бесплатных учебников, которые можно найти в Internet. Не стоит забывать о сообществе разработчиков и большом количестве книг (кстати, одну из них вы сейчас читаете). В то время как практически весь спектр взаимодействий с сервером MySQL осуществляется через командную строку, богатый выбор графических программ также упрощает задачу управления и администрирования сервера базы данных MySQL. Наконец, в отличие от своих коммерческих аналогов, которые имеют сотни настраиваемых параметров, СУБД MySQL довольно проста в настройке и имеет возможность оптимизации даже для самых критичных приложений. Что касается коммерческих приложений, СУБД MySQL в дальнейшем поддерживается компанией MySQL AB, обеспечивающей профессиональные курсы обучения, консультативные службы и техническую поддержку.