Софт-Архив

Mysql img-1

Mysql

Рейтинг: 5.0/5.0 (1857 проголосовавших)

Категория: Windows: Базы данных

Описание

Установка MySQL

2.1.1 Установка MySQL на Linux

Для установки MySQL на Linux рекомендуется применять пакеты RPM. В настоящее время RPM для MySQL создаются на операционной системе SuSE Linux 7.3, но они должны работать также и для других версий Linux, которые поддерживают rpm и используют glibc.

В случае возникновения проблем с файлом RPM (например, если вы получили ошибку `` Sorry, the host 'xxxx' could not be looked up ''), обращайтесь к разделу See section 2.6.1.1 Примечания к бинарным дистрибутивам Linux.

Доступны для использования следующие RPM-файлы:

  • MySQL-server-VERSION.i386.rpm. Сервер MySQL. Если вам нужно только подключаться к серверу MySQL, запущенному на другом компьютере, этот файл не требуется. Обратите внимание, что выхода 4.0.10 этот пакет назывался MySQL-VERSION.i386.RPM .
  • MySQL-client-VERSION.i386.rpm. Стандартные клиентские программы MySQL. Установка этого пакета требуется всегда.
  • MySQL-bench-VERSION.i386.rpm. Тесты и контрольные задачи. Для файла требуется наличие модулей Perl и msql-mysql-modules.
  • MySQL-devel-VERSION.i386.rpm. Библиотеки и включаемые файлы, необходимые для компилирования других клиентов MySQL, таких как модули Perl.
  • MySQL-shared-VERSION.i386.rpm Этот пакет содержит динамические библиотеки ( libmysqlclient.so* ), нужные для некоторых языков программирования или приложений для того, чтобы работать с MySQL.
  • MySQL-embedded-VERSION.i386.rpm Встраиваемая библиотека сервера MySQL (MySQL 4.x и более новые).
  • MySQL-VERSION.src.rpm. Этот файл содержит исходный код для всех предыдущих пакетов. Файл также можно использовать для создания файлов RPM для других архитектур (например Alpha или SPARC).

Для просмотра всех файлов в пакете RPM выполните команду:

Для выполнения стандартной минимальной установки запустите команду:

Для установки только клиентского пакета выполните команду:

RPM помещает данные в `/var/lib/mysql' и создает соответствующие вхождения в `/etc/init.d/' для автоматического запуска сервера во время начальной загрузки (в случае, если у вас имеется предыдущая инсталляция, можно создать копию ранее установленного файла запуска MySQL, чтобы изменения в нем не были утеряны.)

Если вы хотите установить MySQL RPM на старших версиях Linux, которые не поддерживают init-скрипты в `/etc/init.d' (непосредственно или посредством символической ссылки), вам следует создать символическую ссылку на старое расположение перед тем, как устанавливать RPM:

Однако, все современные поставки Linux должны поддерживать эту схему каталогов, т.к. это требование стандарта LSB (Linux Standard Base).

После установки RPM, mysqld должен заработать и вы можете сразу приступать к использованию MySQL.

Если при установке возникнут проблемы, то за более подробной информацией следует обращаться к главе, в которой описывается установка из бинарного дистрибутива. See section 2.2.10 Установка бинарного дистрибутива MySQL.

2.1.2 Установка MySQL на Windows

Имеются два следующих типа дистрибутивов сервера MySQL для Windows:

  1. Бинарный дистрибутив, в состав которого входит программа установки; она устанавливает все, что нужно, так что можно сразу же запускать сервер.
  2. Дистрибутив исходного кода, в котором содержится весь код и файлы поддержки для создания исполняемых файлов с использованием компилятора VC++ 6.0. See section 2.3.7 Дистрибутив исходного кода для Windows .

В общем случае следует отдавать предпочтение бинарному дистрибутиву.

  • 32-разрядная операционная система Windows, такая как 9x, Me, NT, 2000 или XP. Под управлением семейства NT (NT, Windows 2000 и XP) сервер MySQL можно запускать как сервис. See section 2.6.2.2 Запуск MySQL на Windows NT, 2000 или XP. Если предполагается работать с таблицами размером более 4 Гб, необходимо установить MySQL на файловую систему NTFS или более новую. При создании таблиц не забывайте использовать MAX_ROWS и AVG_ROW_LENGTH. See section 6.5.3 Синтаксис оператора CREATE TABLE .
  • Поддержка протокола TCP/IP.
  • Копия бинарного кода MySQL или дистрибутив для Windows, который может быть загружен с http://www.mysql.com/downloads/. Примечание: дистрибутив поставляется в виде архивных файлов, сжатых архиватором ZIP. Во избежание повреждения файлов в процессе загрузки мы рекомендуем использовать адекватный клиент FTP с возможностью возобновления загрузки.
  • Архиватор ZIP для распаковки файла дистрибутива.
  • Достаточно места на жестком диске для распаковки, установки и создания баз данных в соответствии с вашими требованиями.
  • Если вы планируете подключаться к серверу MySQL через ODBC. то понадобится драйвер MyODBC. See section 8.3 Поддержка ODBC в MySQL .
2.1.2.2 Подготовка конфигурации MySQL для Windows

Начиная с версии MySQL 3.23.38, дистрибутив для Windows включает в себя как обычный бинарный код, так и бинарный код сервера MySQL-Max. Ниже приводится список различных серверов MySQL, которые можно использовать:

Другие статьи, обзоры программ, новости

Установки и настройка MySQL

Установка MySQL 5.5.23

Статья описывает процесс установки и первоначальной настройки на локальном компьютере, работающим под операционной системой Windows XP, прекрасно зарекомендовавшей себя связки программ, используемых при создании, как крупных, так и средних веб-проектов: Apache, MySQL, PHP и phpMyAdmin.

Содержание:

Сайт разработчика: http://www.mysql.com/

Установка MySQL в картинках

В данном окне обратите внимание на строку "Write configuration file", которая указывает на месторасположение конфигурационного файла MySQL - "my.ini", далее, его необходимо будет немного отредактировать.

Откройте для редактирования файл "my.ini".
  1. В раздел [client], после строки:

Добавьте строку определяющую каталог содержащий файлы описания кодировок:

character-sets-dir="C:/Program Files/MySQL/MySQL Server 5.5/share/charsets"
  • В раздел [mysqld], после строки:

    Добавьте следующие две строки, первая из которых вам уже известна, вторая – устанавливает кодировку в которой данные передаются MySQL:

    init-connect="SET NAMES cp1251"
  • Далее, найдите строку:

    default-storage-engine=INNODB

    Замените изначально устанавливаемый тип таблиц на MYISAM:

    default-storage-engine=MYISAM

  • Сохраните изменения и закройте файл "my.ini".

    Установка и настройка сервера MySQL – завершена.

    MySQL - это просто!

    MySQL - это просто!

    Сначала ответим на вопрос - что такое MySQL? Это База Данных (БД), в которой структурировано хранятся данные. Следует второй вопрос - зачем отказываться от простых и удобных файлов к сложной БД? Потому что файлы, генерируемые каким либо скриптом на основе файловой БД (гостевые книги, CMS, форумы), постепенно начинают увеличиваться в размере, а так же их количество неуклонно растет. Поиск сильно затруднен. После преодоления некоторого порога (1000, 10000 файлов..) скрипт начинает жутко тормозить, и приходится подолгу ждать, когда он закончит свою работу. БД лишены этих недостатков - даже если в таблице будет миллион записей, поиск среди них будет идти доли секунды. Так уж они устроены, чтобы манипулировать огромным количеством данных. Но тут и возникает вопрос - а как работать с БД, в данном случае с MySQL? Эта статья как раз об этом.

    Подключение к серверу.

    Серверу MySQL, чтобы подключиться к нему, нужно передать 4 параметра:

    • Хост. Это серовер, на котором расположен сервер MySQL. В абсолютном большинстве хост равен "localhost".
    • Имя пользователя. Имя пользователя, который может работать с этой таблицей. На локальных компьютерах по дефолту поставлен "root". На хостинге - в зависимости от вас.
    • Пароль. Пароль выбранного пользователя. По умолчания равен пустой строке - "".
    • Имя Базы данных. Имя БД, как вы ее назвали. По умолчанию - "test".

    Подключаться к серверу нужно с помощи команды:

    $msconnect=mysql_connect( "Хост". "Пользователь". "Пароль" );

    Выбирать конкретную Базу данных:

    mysql_select_db( "Имя базы данных". $msconnect);

    Закрыть подключение нужно командой:

    И соответственно полный пример подключения, выбирание нужной таблицы и закрытие подключеиния :

    $mshost = "localhost" ; // Хост

    Документация по MySQL

    О чем это?

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

    ЭТО НЕ ПЕРЕВОД ОРИГИНАЛЬНОЙ ДОКУМЕНТАЦИИ! Этот документ написан после прочтения фирменной документации, работы с пакетом и даже попыток его повалить, правда, не слишком удачных. Таким образом, в документе нашлось место и для личного мнения автора по ряду вопросов. Этот абзац мне пришлось включить на основании опыта подготовки подобной документации. Увы, описания, выстраданные кропотливым изучением программ, посчитали примитивным переводом, что говорит о том, что с ними просто не ознакомились должным образом. Я не отрицаю изучения мной оригинальной документации на пакет, но этот документ переводом не является.

    С другой стороны, мне понравилась структура оригинальной документации, и я ее по, возможности, придерживался. Однако, структура-это еще не документация.

    Данное описание пакета MySQL подготовлено Паутовым Алексеем Валентиновичем в качестве курсовой работы. По вопросам использования данного документа прошу обращаться по e-mail.

    Я заранее приношу извинения за ошибки и неточности (если таковые здесь есть), и прошу Вас сообщить мне о них. Я постараюсь их исправить. Я не несу какой-либо ответственности за какие бы то ни было последствия применения данного документа или сведений, изложенных в нем (в частности, упоминания возможных дыр в защите СУБД). Так что, если кто-то, прочитав этот документ возьмет, да и сотрет базу данных записей этак тысяч на сто, то я тут ни при чем!

    В заключение хочется попросить Вас, если Вам понравилась эта страничка или пригодилась изложенная здесь информация, послать благодарность автору. Это поможет мне вести статистику того, скольким людям пригодилось хоть что-то из моих трудов.

    Ну а теперь к делу.

    Что такое MySQL?

    MySQL разработал Михаэль Видениус (Michael Widenius, monty@analytikerna.se ). MySQL является относительно небольшой и быстрой реляционной СУБД основанной на традициях Hughes Technologies Mini SQL (mSQL).

    Последнюю версию MySQL можно скачать с www.tcx.se.

    Чем хорош MySQL?

    Перечислю основные приятные стороны пакета MySQL.

    • Многопоточность. Поддержка нескольких одновременных запросов.
    • Оптимизация связей с присоединением многих данных за один проход.
    • Записи фиксированной и переменной длины.
    • ODBC драйвер в комплекте с исходником
    • Гибкая система привилегий и паролей.
    • До 16 ключей в таблице. Каждый ключ может иметь до 15 полей.
    • Поддержка ключевых полей и специальных полей в операторе CREATE.
    • Поддержка чисел длинной от 1 до 4 байт (ints, float, double, fixed), строк переменной длины и меток времени.
    • Интерфейс с языками C и perl.
    • Основанная на потоках, быстрая система памяти.
    • Утилита проверки и ремонта таблицы ( isamchk ).
    • Все данные хранятся в формате ISO8859_1.
    • Все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках.
    • Псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице.
    • Все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей.
    • Легкость управления таблицей, включая добавление и удаление ключей и полей.
    Что такое SQL?

    SQL - это сокращение от Structured Query Language (структурированный язык запросов). SQL создан для работы с реляционными базами данных. Он позволяет пользователям взаимодействовать с базами данных (просматривать, искать, добавлять и управлять данными). MySQL соответствует спецификации ANSI 92 SQL. Подробности.

    Интерфейс с языками программирования

    Наиболее простой способ работы с MySQL сводится к использованию программы MySQL. Это клиентская часть СУБД MySQL. Можно выполнять команды SQL непосредственно из командной строки системы unix или из интерактивного режима MySQL. Подробнее о клиентских программах.

    СУБД MySQL имеет библиотеку C API. Ее можно использовать для запросов к базе данных, вставки данных, создания таблиц и т.п. C API поддерживает все функции MySQL. Подробности в главе "Интерфейс для С (C API)".

    Язык perl поддерживается сразу двумя способами:
    • Портирован интерфейс с perl из mini-SQL, разработанный Андреасом Коенигом (Andreas Koenig a.koenig@mind.de ).
    • Есть модуль perl DBD
    Подробнее этот вопрос рассмотрен в главе "Интерфейс с perl (MySQL perl API)".

    Также доступен 32-битный ODBC драйвер для MySQL. Он позволяет запрашивать и получать данные из других источников с поддержкой ODBC. С подробностями можно ознакомиться на домашней страничке MySQL (увы, только на английском языке).

    В заключение хочется попросить Вас, если Вам понравилась эта страничка или пригодилась изложенная здесь информация, послать благодарность автору. Это поможет мне вести статистику того, скольким людям пригодилось хоть что-то из моих трудов.

    Mysql

    Содержание

    MySQL (официально произносится «май-эс-кью-эль», сленг. «мускул», «мускуль» ) — свободная система управления базами данных (СУБД).Она позволяет пользователям взаимодействовать с Базами Данных (просматривать, искать, добавлять и управлять данными). MySQL соответствует спецификации ANSI 92 SQL. Разработку и поддержку MySQL осуществляет корпорация Oracle. получившая права на торговую марку вместе с поглощённой Sun Microsystems. которая ранее приобрела шведскую компанию MySQL AB. Продукт распространяется как под GNU General Public License. так и под собственной коммерческой лицензией. Помимо этого, разработчики создают функциональность по заказу лицензионных пользователей. Именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

    MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Первый внутренний выпуск MySQL состоялся 23 мая 1995 года; Версия для Windows систем (Windows 95 и NT) выпущена 8 января 1998;

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

    Основные преимущества MySQL 5.5:

    • Усовершенствованные сервер баз данных MySQL Server и система управления базой данных InnoDB обеспечивают необходимую производительность и масштабируемость при работе с новейшими многопроцессорными и многоядерными платформами и операционными системами;
    • InnoDB теперь является системой хранения данных для сервера MySQL по умолчанию и предоставляет ACID-транзакции, ссылочную целостность и восстановление после сбоя;
    • Поддержка полусинхронного механизма репликации повышает отказоустойчивость за счет того, что мастер-сервер продолжает работу, не дожидаясь подтверждений от каждого из подчиненных узлов. При получении подтверждения выполнения команды хотя бы от одного подчиненного узла транзакция может быть завершена. Такой подход также помогает сохранить целостность данных;
    • Функция Replication Heart Beat ускоряет обнаружение, диагностику и устранение проблем при синхронизации работ мастер-сервера и подчиненного узла, что позволяет повысить надежность и готовность данных, а также снизить уровень риска;
    • Усовершенствованный механизм секционирования индексов и таблиц позволяет задавать разделы RANGE и LIST по столбцам с типами данных «date», «datetime», «varchar» и «char», что упрощает работу с MySQL, расширяет возможности СУБД, а также повышает гибкость индексации баз данных и настройки запросов;
    • Возможность использования синтаксиса инструкций SIGNAL/RESIGNAL, отвечающий стандарту ANSI/ISO, для реализации механизма обработки ошибок в приложениях, внутри хранимых процедур и триггеров;
    • Расширенные средства диагностики, включая новую функцию PERFORMANCE_SCHEMA, обеспечивают низкоуровневую диагностику на основе статистических данных производительности сервера MySQL, позволяя администраторам баз данных идентифицировать ресурсоемкие процессы и события, оптимизировать трудозатраты и повысить их продуктивность.
    • Кроме того, как сообщается, результаты недавних тестов производительности продемонстрировали значительный рост производительности MySQL 5.5 по сравнению с MySQL 5.1: для Windows прирост производительности при выполнении операций чтения/записи составил до 1500%, а в режиме «только чтение» – до 500%; для Linux прирост производительности при выполнении операций чтения/записи составил до 360%, а в режиме «только чтение» – до 200%.
    MySQL 5.5.8

    MySQL 5.5.8 является первым стабильным релизом MySQL ветви 5.5.x (предыдущие релизы в этой ветви не были стабильными). Среди наиболее значительных изменений новой версии MySQL 5.5 называется оптимизация производительности на многопроцессорных системах. В качестве подсистемы для хранения данных по умолчанию теперь используется InnoDB (разрабатываемый подразделением Oracle Innobase), вместо движка MyISAM, который использовался ранее. Одновременно в саму InnoDB добавлены улучшения, обеспечивающие большую производительность операций по вводу/выводу данных. В MySQL 5.5 также обеспечена более качественная поддержка ОС Solaris (в том числе, поддержка атомарных инструкций, улучшения работы на многопроцессорных системах и др.) и добавлена поддержка средства диагностики Dtrace.

    Community-версия MySQL распространяется на условиях лицензии GNU GPL. Пользователи, заинтересованные в коммерческой поддержке, могут приобрести одну из версий Classic Edition, Standard Edition, Enterprise Edition или Cluster Carrier Grade Edition на условиях платной подписки.

    MySQL 5.5 Enterprise Edition

    MySQL 5.5 Enterprise Edition — комплексное решение, предоставляемое по подписке, которое включает базу данных MySQL Database и инструменты мониторинга, резервного копирования и разработки в сочетании с круглосуточной технической поддержкой клиентов по всему миру. В MySQL 5.5 Enterprise Edition добавлены инструменты MySQL Enterprise Backup и MySQL Workbench, а также расширения MySQL Enterprise Monitor. MySQL Enterprise Edition поддерживает множество операционных систем, включая Linux и Windows, и, по сравнению с Microsoft SQL Server, позволяет сократить совокупную стоимость владения, говорится в сообщении Oracle.

    Среди усовершенствований MySQL Enterprise Edition можно отметить интеграцию со службой MyOracle Support, что позволяет заказчикам MySQL пользоваться круглосуточной технической поддержкой мирового класса от Oracle. Кроме того, действующие клиенты Oracle Database, которые, возможно, применяют MySQL Database для ведомственных и веб-приложений, могут получать техническую поддержку по MySQL через свою существующую среду MyOracle Support, отметили в Oracle.

    MySQL Enterprise Monitor 2.3 предлагает новые правила и диаграммы, которые помогают пользователям дополнительно оптимизировать производительность и готовность MySQL Database и MySQL Cluster. Обновление включает новые диаграммы MySQL и InnoDB, а также диаграммы для определенной операционной среды, которые улучшают визуальный контроль ключевых систем как для режима мониторинга в реальном времени, так и для статистического анализа тенденций.

    В свою очередь, MySQL Enterprise Backup 3.5 позволяет организациям осуществлять оперативное резервное копирование баз данных MySQL Databases без прерывания работы систем, а также улучшает целостность данных и продолжительность безотказной работы благодаря поддержке режимов полного, поэтапного и частичного резервного копирования, а также восстановления состояния базы данных на определенный момент времени (Point-in-Time recovery) и сжатия данных при резервном копировании.

    MySQL Workbench 5.2 предоставляет функции моделирования данных и разработки SQL, а также полный набор инструментов администрирования, позволяя пользователям визуально проектировать, моделировать, генерировать и управлять базами данных MySQL Databases.

    В сентябре 2011 года было объявлено, что в коммерческой версии СУБД MySQL (Enterprise Edition) появилось еще несколько расширений, ориентированных на применение в корпоративной среде. Исходные коды этих расширений не будут включаться в свободно распространяемую версию MySQL, что еще больше отдалит ее от коммерческой. Это обычная практика среди компаний, разрабатывающих коммерческие варианты программ с открытым кодом, но решение Oracle вряд ли устроит всех пользователей.

    Производительность приложений MySQL, которым необходимо обслуживать множество одновременных соединений, будет повышена за счет организации пула потоков. Особенно заметным эффект должен стать на системах с 16 и более ядрами, утверждают в Oracle. В коммерческую версию теперь входят шаблон виртуальной машины Oracle VM, поддержка системы обеспечения высокой доступности Windows Server Failover Clustering (WSFC) и несколько внешних модулей аутентификации, в том числе для служб Windows.

    Лицензия Enterprise Edition на год для одного сервера с количеством процессоров не больше четырех стоит 5 тыс. долл. Вскоре будет доступна и бесплатная тестовая версия сроком на 30 дней.

    • Значительно усовершенствована основная система хранения InnoDB и оптимизатор запросов. Оптимизатор теперь способен сохранять алгоритмы исполнения для конкретных запросов, указанных администратором. В версию 5.6, по-видимому, будут включены некоторые технологии, реализованные компанией Percona – она выпускает модифицированный вариант MySQL под названием Percona Server. Одной из них является восстановление буфера запросов после перезапуска сервера. Сервер хранит в буфере записи, которые чаще всего запрашиваются клиентами, однако в стандартном варианте MySQL при перезапуске содержимое буфера пропадает, и, пока он не заполнится снова, производительность будет ниже обычной. Репликация серверов в версии 5.6 будет многопоточной. Сервер, где создается резервная копия, сможет вносить изменения параллельно во все реплицируемые базы данных. Реализована также репликация с задержкой по времени, которая может служить страховкой от ошибок оператора.
    • 5 сентября 2011 г. Oracle объявила об открытии доступа к новым функциям MySQL 5.6, чтобы разработчики могли тестировать, внедрять и комментировать их. Появившиеся в общем доступе функции базы данных предназначены для повышения масштабируемости, производительности и гибкости.

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

    «Oracle продолжает развивать MySQL, чтобы удовлетворить растущие потребности разработчиков приложений, – заявил Томас Улин (Tomas Ulin), вице-президент Oracle по разработке MySQL. – Ознакомительный доступ к версии MySQL 5.6 позволит проверить работу множества важных функций, предназначенных для повышения производительности, гибкости и масштабируемости этой СУБД. Кроме того, сообщество MySQL сможет поделиться с Oracle своими замечаниями и предложениями».

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

    Oracle открыла ознакомительный доступ к функциям MySQL 5.6, находящимся в стадии активной разработки, чтобы пользователи и участники сообщества MySQL могли комментировать их. Планируется, что после завершения разработки эти функции будут включены в будущие версии: рабочую (Development Milestone) и финальную (General Availability).

    Улучшенная репликация, обновленная система хранения данных InnoDB и расширение поиска

    На сайте http://labs.mysql.com открыты для ознакомления, тестирования и комментирования следующие новые функции MySQL 5.6:

    • Полнотекстовый поиск в InnoDB: предоставляет пользователям возможность построения полнотекстовых индексов и поиска текстовой информации, хранящейся в таблицах InnoDB, а также поддерживает быстрый и точный поиск по содержимому документов.
    • Предварительная загрузка содержимого пула буферов InnoDB: новые возможности ручной и автоматической предварительной загрузки содержимого пула буферов InnoDB позволяют существенно сократить время выхода сервера на рабочий режим после перезапуска.
    • Увеличение объема файлов журналов отката InnoDB: максимальный размер файлов журналов отката InnoDB увеличен с 4 ГБ до 2 ТБ, чтобы повысить производительность приложений с высокой интенсивностью операций записи или транзакций длительного выполнения.
    • Групповая фиксация изменений в бинарном журнале обновлений: операция групповой фиксации изменений (Group Commit) применяется для повышения производительности механизма репликации MySQL. Обновления записываются в бинарный журнал в параллельном режиме, а затем фиксируются как группа в журнале binlog на диске.
    • Binlog API: позволяет легко интегрировать MySQL с новыми и унаследованными приложениями, а также с хранилищами данных. Этот интерфейс прикладного программирования позволяет разработчикам упростить интеграцию, стандартизируя DML операции в MySQL, в то время как репликация данных в другие приложения производится в рамках их инфраструктуры управления данными.
    MySQL 5.6 DMR

    Oracle анонсировала весной 2012 года рабочую версию (Development Milestone Release) базы данных с открытым исходным кодом MySQL 5.6. MySQL 5.6 DMR включает в себя новые возможности репликации, которые повышают доступность базы данных благодаря средствам самовосстановления, а также отличается более высокой производительностью и более совершенными инструментами управления. Рабочую версию базы данных MySQL 5.6 DMR можно загрузить с сайта MySQL Developer Zone.

    Кроме нового релиза DMR, Oracle открывает на labs.mysql.com доступ к принципиально новым возможностям, которые находятся на стадии разработки, для тестирования и обсуждения широким кругом пользователей. Функции включают в себя возможности добавления индексов на лету, а также доступ к InnoDB таблицам через NoSQL-интерфейс с использованием протокола Memcached.

    В числе преимуществ рабочей версии MySQL 5.6: высокая доступность с новыми функциями репликации; новая оптимизация для лучшей обработки сложных запросов; усовершенствованная Performance_Schema.

    На сайте labs.mysql.com открыт ознакомительный доступ к следующим функциям MySQL 5.6, находящимся в стадии активной разработки, чтобы пользователи и участники сообщества MySQL могли их комментировать: поддержка добавления индексов на лету (улучшение доступности и производительности InnoDB благодаря полностью сетевой работе индексов ADD без блокировок, поддержка более быстрой и простой эволюции схем для обеспечения быстрого развертывания web-сервисов); высокопроизводительный доступ к InnoBD через NoSQL интерфейс с использованием протокола Memcached (возможность гибкого использования NoSQL-технологий для доступа к данным InnoDB одновременно с использованием SQL-запросов); дополнительное увеличение производительности на современных аппаратных системах (повышение производительности запросов InnoDB благодаря улучшению обработки часто обновляемых областей данных на многоядерных процессорах).

    16 октября 2013 года корпорация Oracle объявила о выпуске второй рабочей версии (Development Milestone Release, DMR) MySQL 5.7, уже доступной для загрузки.

    Новая версия отличается оптимизированной производительностью, масштабируемостью и управляемостью, что позволяет разработчикам и администраторам СУБД создавать современные веб-, облачные и встраиваемые приложения, способные обрабатывать постоянно растущие объемы данных. В дополнение к новой версии DMR, Oracle открыла на labs.mysql.com доступ к дополнительным функциональным возможностям, находящимся в стадии разработки, для тестирования и обсуждения широким сообществом пользователей.

    Ключевые изменения:

    • обеспечивает производительность в 500 тыс. запросов в секунду (QPS), линейное вертикальное масштабирование до 64 процессорных ядер, повышенную пропускную способность репликации данных на slave-сервере — используется новый режим многопоточной обработки событий репликации на них, при котором не пересекающиеся транзакции обрабатываются в отдельных параллельных потоках, даже когда эти транзакции оперируют одной и той же схемой базы данных.
    • оптимизированы: операция Online Alter Table — реализована поддержка для неблокирующих переименования индексов и расширения столбцов с типом данных VARCHAR;
    • средства управления триггерами — реализована поддержка привязки нескольких триггеров к одному типу событий в одной таблице, также возможно определение последовательности срабатывания триггеров с помощью операторов Follows и Precedes.
    • расширены возможности диагностики использования внутренней памяти через общую схему диагностики производительности Performance Schema. Добавлены средства, которые помогают отследить операции выделения памяти и использования памяти в процессе работы mysqld (ядра MySQL). При этом впервые в истории MySQL реализованы встроенная поддержка и средства отслеживания использования памяти. Мониторинг использования памяти позволяет получить доступ к ряду показателей, таких как: объем внутренней памяти, используемой в текущий момент, количество операций с памятью, а также минимальное и максимальное значения этих показателей за период времени.
    • расширены возможности диагностики использования хранимых программ (Stored Programs) в Performance Schema — добавлена детальная информация о внутренних инструкциях, выполняемых внутри хранимых программ; возможности обработки ошибок в хранимых программах (Stored Programs) — команда Get Stacked Diagnostics может быть использована в качестве нового инструмента для анализа ошибок, необходимого для выявления, исследования и обработки проблем в хранимых программах. Также появилась возможность анализа запроса в процессе его выполнения — оператор Explain для другого соединения позволяет получить планы исполнения для запросов, выполняемых в текущий момент.
    • реализована расширенная поддержка вывода результатов Explain в формате JSON - она помогает получить более детальную информацию о планах запросов путем добавления данных о совокупной стоимости запроса, стоимости в расчете на таблицу и общем объеме данных, что дает представление о вычислениях и оценках оптимизатора на основе стоимостных характеристик. Можно увидеть не только то, какой план исполнения выбран, но и почему.
    • предоставляется возможность полусинхронной репликации данных без потерь, попутно обеспечивается фиксация транзакций в механизме хранения и во внешней памяти на master-сервере только после того, как slave-сервер подтвердил получение данных.

    Доступность

    Версия MySQL Community Edition 5.7.2 DMR доступна для загрузки с сайта MySQL Developer Zone. Дополнительно на сайте labs.mysql.com можно получить доступ для досрочного тестирования и обсуждения сообществом MySQL ряда важных функций: mysqlfabric в пакете утилит MySQL Utilities 1.4.0 — позволяет осуществлять горизонтальное масштабирование через «шардинг» (изначально предусмотрена поддержка этого инструмента в клиентских библиотеках для PHP. Python и Java ); Multi-source репликация MySQL — позволяет одному slave-серверу агрегировать данные из нескольких master-серверов.

    Инструмент миграции на MySQL c Microsoft SQL Server

    Корпорация Oracle объявила в сентябре 2012 года о выпуске нового инструмента миграции, который расширяет возможности пользователей MySQL в операционной среде Microsoft Windows. позволяя им быстро и с легкостью перейти с Microsoft SQL Server на MySQL. Новый подключаемый программный модуль MySQL for Excel также позволяет аналитикам получать беспрепятственный доступ и управлять данными, хранимыми в MySQL, из приложения Microsoft Excel без необходимости предварительного технического освоения MySQL.

    Также доступны для загрузки инструмент установки MySQL Installer for Windows, который помогает пользователям настроить расширенные функции информационной безопасности и журналирования; и новое приложение MySQL Notifier для платформы Windows, позволяющее пользователям с легкостью контролировать и управлять экземплярами сервера MySQL.

    Использование MySQL вместо Microsoft SQL Server 2012 позволяет снизить совокупную стоимость владения базой данных вплоть до 90%.

    «Oracle продолжает предоставлять инновации и дополнительные преимущества MySQL пользователям Windows и независимым поставщикам программного обеспечения, – отметил Томас Улин (Tomas Ulin), вице-президент Oracle по разработке MySQL. – Упрощенная миграция, улучшенное управление данными, администрирование и контроль, а также облегченная установка и дополнительные опции конфигурирования делают MySQL идеальной платформой для разработки, развертывания и управления критически важными бизнес-приложениями в среде Windows».

    Новый инструмент миграции, который интегрирован в программу MySQL Workbench, позволяющую визуализировать проектирование, разработку и администрирование баз данных MySQL, теперь предоставляет полное решение для миграции таблиц и данных Microsoft SQL Server в MySQL с меньшими затратами времени и усилий.

    Используя MySQL Workbench, разработчики SQL Server и администраторы баз данных могут быстро и с легкостью конвертировать существующие приложения для использования MySQL как на платформе Windows, так и на других операционных платформах.

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

    Усовершенствованный инструмент установки MySQL Installer, позволяя пользователям в большинстве случаев перейти от загрузки к разработке в течение трех минут или даже меньше, предоставляет с помощью операций "point-and-click" («укажи и выбери щелчком мыши») конфигурировать новые экземпляры базы данных MySQL, а также настраивать расширенные функции безопасности и журналирования.

    Новое приложение MySQL Notifier для Windows помогает разработчикам и администраторам баз данных с легкостью – благодаря схожести по «виду и ощущениям» с Microsoft SQL Server – осуществлять мониторинг, запуск и остановку работы экземпляров базы данных MySQL.

    Новые инструменты будут продемонстрированы на предстоящей двухдневной конференции MySQL connect Conference, которая пройдет 29 и 30 сентября в Сан-Франциско. Следите за сообщениями в Twitter-ленте MySQL Connect (хэштег #mysqlconnect).

    Development Milestone Release MySQL 5.7.4

    31 марта 2014 года корпорация Oracle объявила о выпуске новой версии Development Milestone Release (DMR) MySQL 5.7.4.

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

    Обновлённый продукт можно загрузить с сайта MySQL Developer Zone. В нём предлагаются модернизированные средства репликации, безопасности и диагностики.

    Среди новых возможностей СУБД в Oracle отметили:

    • улучшение функций ГИС (использование пространственных индексов в InnoDB,
    • повышение точности и производительности;
    • повышение производительности и пропускной способности при использовании твердотельных накопителей (Solid State Disk, SSD).

    Продолжена разработка multi-source репликации, улучшена производительность полусинхронной репликации MySQL.

    В новой версии MySQL улучшены:

    • оптимизатор, обеспечивающий расчёты затрат в процессе выбора плана исполнения запроса;
    • схемы Performance Schema, включая дополнительные средства диагностики;
    • безопасность, в том числе 256-битное шифрование по стандарту Advanced Encryption Standard (AES)
    • новые возможности для управления паролями.
    Development Milestone Release MySQL 5.7.5

    6 ноября 2014 года корпорация Oracle представила новую рабочую версию MySQL 5.7.

    В версии MySQL 5.7.5 реализовано множество функций и возможностей для повышения производительности и масштабируемости:

    • новая модель динамических затрат оптимизатора,
    • улучшения производительности InnoDB
    • улучшения производительности репликации
    • ряд усовершенствований управляемости.

    Для улучшения поддержки сообщества MySQL, Oracle открыла на сайте GitHub.com свободный доступ к исходному коду MySQL, давая пользователям возможность загрузки с предпочитаемой ими платформы хостинга кода.

    В составе усовершенствований производительности и масштабируемости:

    • реализована новая модель динамических затрат оптимизатора MySQL, расширяющая возможности пользователей и улучшающая производительность запросов.
    • улучшения производительность InnoDB, которые ускоряют операции загрузки данных в режиме реального времени (online load) и массовой загрузки данных (bulk load).
    • улучшения системы диагностики производительности Performance Schema, которые включают реализацию средств контроля активности пользователей и параметров состояния (status variable), а также инструментария для информационного контроля выполнения процесса репликации.
    • улучшения производительности репликации, включая режим многопоточной репликации данных на slave-сервере в рамках одной и той же схемы базы данных (intraschema multithread slave) – позволяют обрабатывать многие транзакции в отдельных параллельных потоках при сохранении целостности и поддержке повторов транзакций (transaction retries).
    • в тесте SysBench Read-only Point-Selects с 1024 соединениями новая рабочая версия MySQL 5.7 продемонстрировала производительность в 645000 QPS (queries per second – запросов в секунду), что в 2 раза превышает аналогичный показатель версии MySQL 5.6. С помощью MySQL 5.7 был также достигнут результат более чем в 1 млн. NoSQL-запросов в секунду к таблицам InnoDB через интерфейс на основе протокола Memcached, что в 6 раза превышает результат версии MySQL 5.6.

    Улучшение управляемости:

    • новый глобальный словарь данных улучшает управляемость, а также производительность запросов.
    • улучшенный механизм использования разделов (partitioning) упрощает администрирование баз данных благодаря быстрому и легкому перемещению разделов базы данных.
    • улучшение функций ГИС (географическая информационная система) обеспечивает более надежную поддержку пространственных данных, включая Geohash и GeoJSON.
    • улучшения процесса репликации с использованием механизма глобальных идентификаторов транзакций (GTID – Global Transactions Identifiers) устраняют необходимость запуска бинарных журналов (binary log) на slave-серверах.
    • в новой DMR-версии MySQL реализована поддержка OracleHYPERLINK (включая встроенную поддержку инструмента диагностики DTrace) и Red Hat Enterprise Linux 7 .
    Стабильный релиз MySQL 5.7

    19 октября 2015 года компания Oracle представила первый стабильный релиз СУБД MySQL 5.7 [1].

    Несмотря на анонс, финальный релиз MySQL Community Server 5.7, распространяемый под лицензией GPL, пока недоступен для загрузки и будет опубликован 26 октября 2015 года.

    Основные изменения в MySQL 5.7:

    • поддержка манипуляции данными в формате JSON. Добавлен встроенный тип данных JSON и набор функций для эффективной обработки, хранения, разбора и поиска неструктурированных данных в формате JSON. Документы JSON упаковываются в специальный внутренний бинарный формат, поддерживают индексацию и могут интегрироваться в SQL-запросы, в том числе с генерацией виртуальных столбцов;
    • компонент MySQL Router, позволяющий организовать подключение приложений к нескольким БД MySQL. MySQL Router также может использоваться для создания отказоустойчивых конфигураций и для автоматизации шардинга данных на нескольких серверах;
    • проведена оптимизация производительности. В тесте SysBench при установке 1024 соединений MySQL 5.7 сумел продемонстрировать производительность в 1.6 млн запросов на чтение в секунду, что в три раза выше, чем смогла обеспечить конфигурация на основе MySQL 5.6.
    • поддержка режима multi-source репликации, позволяющего реплицировать данные от нескольких master-серверов на один slave-сервер. Например, указанную возможность можно использовать для резервного копирования содержимого разных серверов, для консолидации данных нескольких серверов или для объединения таблиц шардинга. На стороне slave-серверов добавлена поддержка каналов репликации, позволяющих использовать разные соединения для параллельного приёма данных с разных серверов в несколько потоков;
    • в оптимизаторе реализована новая модель динамического расчёта приоритетов, позволяющая добиться более высокой скорости обработки запросов и предоставляющая пользователю больше средств управления;
    • добавлен новый набор системных таблиц Performance Schema со статистикой о распределении памяти, транзакциях, хранимых процедурах, репликации и блокировках;
    • расширены средства обработки состояния и диагностики работы СУБД. В рамках механизма SYS Schema предоставлен набор вспомогательных объектов с информацией о производительности, состоянии работы и мониторинге. Добавлена поддержка вложенных областей диагностики (просмотр командой GET STACKED DIAGNOSTICS);
    • реализован более защищённый механизм инициализации директории с данными СУБД: По умолчанию создаётся только аккаунт 'root@localhost' со случайно созданным паролем, который сразу помечается устаревшим и требует установки нового пароля. Анонимные пользовательские аккаунты и тестовые БД не создаются;
    • добавлена реализация типов данных для задания пространственных координат c поддержкой InnoDB, GeoJSON и GeoHash;
    • улучшение движка InnoDB:
      • увеличена производительность работы с временными таблицами;
      • расширены средства партицирования;
      • добавлена возможность менять размер строк VARCHAR без перестроения таблицы (ALTER TABLE. ALGORITHM=INPLACE, CHANGE COLUMN. VARCHAR());
      • введено отдельное пространство имён для таблиц с несжатыми данными;
      • поддержка создания табличных пространств, вынесенных из базовой директории с хранилищем. Создание выполняется при помощи конструкции CREATE TABLESPACE;
      • в ALTER TABLE добавлена поддержка выражения RENAME INDEX для переименования индексов;
      • в клиент mysql добавлена опция "--syslog" позволяющая отправлять в лог все вводимые команды;
      • возможность задания политики истечения времени жизни пароля пользователя, после которого для обращения к БД требуется смена пароля. Поддержка временного блокирования учётных записей;
      • при включении поддержки шифрования соединений с сервером, при компиляции с поддержкой OpenSSL теперь производится автоматическая генерация всех необходимых сертификатов SSL и RSA, а также генерация файлов ключей при запуске. Для ручного создания сертификатов и ключей в состав включена утилита mysql_ssl_rsa_setup;
      • по умолчанию включен режим STRICT_TRANS_TABLES, при которых в случае если значение не может быть помещено в БД, выражение приводит к ошибке, что позволяет избежать уязвимостей из-за автоматического обрезания слишком длинных строк;
      • поддержка генерируемых значений столбцов, которые вычисляются во время добавления записи на основе выражения, охватывающего значения других столбцов. (например, в "CREATE TABLE" можно указать "sidec DOUBLE AS (SQRT(sidea * sidea + sideb * sideb)");
      • возможность смены master-сервера без остановки slave-сервера ( без выполнения команды STOP SLAVE);
      • прекращена поддержка отложенного выполнения операций, таких как "INSERT DELAYED" и "REPLACE DELAYED".
      • вместо GRANT для создания и изменения парамтров пользователей теперь следует использовать только CREATE USER и ALTER USER. Вместо "SET PASSWORD" и функции PASSWORD() допускается только "ALTER USER";
      • прекращена поддержка утилит mysqlhotcopy, msql2mysql, mysql_convert_table_format, mysql_find_rows, mysql_fix_extensions, mysql_setpermission, mysql_waitpid, mysql_zap, mysqlaccess и mysqlbug.
      MySQL 5.7 вышел

      23 октября 2015 года корпорация Oracle объявила о доступности MySQL 5.7 - версии системы управления базами данных с открытым исходным кодом.

      Продукт обеспечивает повышение производительности, масштабируемости и управляемости, в нем расширенные возможности NoSQL с поддержкой JSON, компонент MySQL Router, упрощающий соединение приложений с множеством баз данных MySQL.

      Скриншот окна результатов сравнения MySQL 5.6 и MySQL 5.7 (2015)

      Основные изменения в MySQL 5.7 для повышения производительности и масштабируемости:

      • Повышение производительности: в тестах SysBench Read-only Point-Selects с 1024 соединениями версия MySQL 5.7 продемонстрировала производительность в 1,6 млн запросов в секунду (QPS), в 3 раза превышая аналогичный показатель MySQL 5.6.
      • Оптимизация InnoDB: повышение производительности и параллелизма, улучшенные операции в режиме реального времени, пространственные индексы, встроенные средства секционирования и множество других усовершенствований.
      • Более надежная репликация: multi-source репликация, улучшенный механизм глобальных идентификаторов транзакций (Global Transaction Identifier, GTID) и усовершенствованная многопоточная репликация данных на slave-серверах для повышения масштабируемости и доступности.
      • Улучшения оптимизатора: новая динамическая модель расчёта затрат обеспечивает более эффективное выполнение запросов и расширяет возможности пользователей.

      Основные возможности MySQL 5.7 улучшения управляемости:

      • Встроенный тип данных JSON и функции работы с форматом JSON повышают эффективность и гибкость хранения, поиска и использования бессхемных данных. Улучшения включают новый внутренний бинарный формат, поддержку простой интеграции в SQL и управление индексами в документах JSON с использованием генерируемых столбцов.
      • Схема Performance Schema поддерживает диагностику памяти, транзакций, хранимых процедур, подготовленных операторов, репликации и блокировок.
      • Схема MySQL SYS Schema предоставляет объекты helper, позволяющие получать ответы на типичные вопросы о производительности, работоспособности, использовании и мониторинге.
      • Модернизированная защита позволяет проще и безопаснее выполнять инициализацию экземпляров баз данных, их настройку и управление.
      • Оптимизированные функции ГИС для мобильных приложений поддерживают пространственные индексы в InnoDB, а также GeoJSON и GeoHash.

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

      С 26 октября 2015 года MySQL 5.7 доступен для загрузки на сайте dev.mysql.com/downloads/. Имеются условия и ограничения.

      Происхождение

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

      Логотип MySQL в виде дельфина носит имя «Sakila». Он был выбран из большого списка предложенных пользователями «имён дельфина». Имя «Sakila» было отправлено Open Source-разработчиком Ambrose Twebaze.

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

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