MySQL

MySQL
Логотип MySQL
Тип Реляционная СУБД
Разработчик MySQL AB
ОС Кроссплатформенное программное обеспечение
Текущая версия 4.1.21 / 5.0.24a19 июля 2006/25 августа 2006
Лицензия GNU General Public License, Коммерческая лицензия
Сайт www.mysql.com

MySQL (произносится «Май Эс Кью Эль») — свободная система управления базами данных (СУБД). MySQL является собственностью компании MySQL AB, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL характеризуется большой скоростью, устойчивостью и лёгкостью в использовании, является решением для малых и средних приложений. Наряду с Oracle Database это одна из самых быстрых СУБД на сегодняшний день. Входит в LAMP. Распространение СУБД MySQL на основе GPL и высокая скорость обработки запросов привело к тому, что эта база данных стала стандартом де-факто в услугах сетевого хостинга. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Гибкость СУБД MySQL обеспечивается поддержкой большого типа таблиц: пользователи могут выбрать как сверхбыстрые таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и более медленные, но чрезвычайно устойчивые таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующем принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL лицензированию в СУБД MySQL постоянно появляются новые типы таблиц.

Содержание

О происхождении MySQL

MySQL возникла как попытка применить mSQL к собственным разработкам компании: таблицам, для которых использовались ISAM — подпрограммы низкого уровня. В результате был выработан новый SQL-интерфейс, но API-интерфейс остался в наследство от mSQL. Откуда происходит название «MySQL» — доподлинно не известно. Разработчики дают два варианта: либо потому, что практически все наработки компании начинались с префикса My, либо в честь девочки по имени My, дочери Майкла Монти Видениуса, одного из разработчиков системы.

Лицензирование

MySQL имеет двойное лицензирование. MySQL может распространяться в соответствии с условиями лицензии GPL. Но по условиям GPL, если какая-либо программа прилинкована к MySQL, то все части исходного продукта должны также распространятся по лицензии GPL. Однако, это может расходиться с планами разработчиков, которые могут желать включить MySQL в свои продукты, распространяемые без раскрытия исходных кодов. Для таких случаев предусмотрены стандартные коммерческие лицензии компании MySQL AB.

Платформы

MySQL адаптирована к большому количеству платформ: AIX, BSDi, FreeBSD, HP-UX, Linux, Mac OS X, NetBSD, OpenBSD, OS/2 Warp, SGI IRIX, Solaris, SunOS, SCO OpenServer, SCO UnixWare, Tru64, Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP и прочим версиям Windows. Существует также порт MySQL к OpenVMS. Важно отметить, что компании MySQL AB предоставляет для свободной загрузки не только исходные коды СУБД, но и откомпилированные и оптимизированные под конкретные операционные системы готовые исполняемые модули. Которые можно загрузить с зеркал, представленных на официальном сайте.

Языки программирования

MySQL имеет API для языков C, C++, Эйфель, Java, Лисп, Perl, PHP, Python, Ruby, Smalltalk и Tcl, библиотеки для языков платформы .NET, а также обеспечивает поддержку для ODBC посредством ODBC-драйвера MyODBC.

Устаревшая версия

Несмотря на то, что версия 4.0 является устаревшей, она широко распространена и её поддержка на 2005 год всё ещё осуществляется. Основные возможности этой версии:

  • Практически полная реализация ANSI SQL-99, плюс расширения
  • Межплатформенная совместимость
  • Независимые механизмы хранения (MyISAM для быстрого чтения, InnoDB для транзакций и ссылочной целостности)
  • Транзакции
  • Поддержка SSL
  • Кэширование запросов
  • Репликация: один головной сервер на одного подчинённого, много подчинённых на одного головного
  • Полнотекстовая индексация и поиск с использованием механизма MyISAM
  • Внедрённая библиотека базы данных
  • Поддержку Юникода (UTF-8)
  • Таблицы InnoDB обеспечивают соответствие требованиям ACID.
  • Встроенный сервер, позволяющий включать MySQL в автономные приложения.

На 20.06.2006 актуальна версия 5.1.

MySQL 4.1

Рекомендованной версией на 2005 год является MySQL 4.1 вышла 27 октября 2004. Она содержит следующие нововведения:

  • Вложенные запросы и производные таблицы
  • Новая система кодировок и сортировок
  • Более быстрый и гибкий протокол клиент-сервер с поддержкой подготовленных запросов, обеспечивающий их оптимальное исполнение
  • Новая программа установки и настройки для Windows и Linux
  • Защищённые через OpenSSL соединения клиент-сервер
  • Высоко-оптимизированная библиотека, которая может быть использована в сторонних программах
  • Полноценная поддержка Юникода (UTF-8 и UCS2)
  • Стандартные пространственные типы данных GIS, для хранения географической информации
  • Улучшенный полнотекстовый поиск и система помощи

MySQL 5.0

В MySQL 5.0 значительно расширена функциональность, которая ставит MySQL в один ряд с коммерческими СУБД. Если раньше СУБД MySQL обвиняли в недостаточной поддержки стандарта SQL, то с появлением пятой версии этой популярной базы данных, появилась практически полная поддержка стандарта SQL. MySQL 5.0 содержит следующие нововведения:

  • хранимые процедуры и функции
  • обработчики ошибок
  • курсоры
  • триггеры
  • представления
  • информационная схема

Локализация

Начиная с версии 4.1 в СУБД MySQL внедрена новая система кодировок и сортировок. Если вы используете кодировку cp1251, перед выполнением SQL-инструкций необходимо настроить кодировку соединения при помощи операторов:

SET character_set_client='cp1251';
SET character_set_results='cp1251'; 
SET collation_connection='cp1251_general_ci';

Эти три оператора эквивалентны вызову одного оператора:

SET NAMES 'cp1251'

При использовании Юникода UTF-8 этот оператор выглядит следующим образом:

SET NAMES 'utf8'

См. также

Ссылки


Системы управления базами данных (СУБД)
MySQL | Firebird | InterBase | PostgreSQL | MS SQL Server | SQLite | DB2 | Oracle | Informix | DataFlex | Access | Sybase ASE | Sybase ASA | Sybase IQ | Cachee | Paradox | Pervasive SQL | MSDE | ЛИНТЕР | db4o | PrimeBase | Rdb | Ingres | Berkeley DB
 
Начальная страница  » 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9 Home