Вышел крупный новый выпуск MySQL с улучшениями, включая словарь транзакционных данных.
Это промежуточный релиз, используемый разработчиками на свой страх и риск. В терминах MySQL промежуточные выпуски означают, что в процессе разработки произошли значительные изменения, и вы можете столкнуться с проблемами совместимости.
Новая версия MySQL 8.0.0. Если вам интересно, почему произошел скачок с 5.7 (предыдущий стабильный выпуск) до 8.0.0, ответ будет заключаться в том, что версия 6 была отменена, а версия 7 является версией Cluster.
Одним из основных улучшений новой версии является поддержка словаря транзакционных данных. Это реализовано как набор таблиц SQL, хранящихся в InnoDB, и в основном реализовано в этом DMR. Реализация означает, что операторы DDL становятся атомарными и безопасными при сбоях, а надежность повышается. MyISAM теперь в принципе необязателен, поскольку все системные таблицы были перемещены из MyISAM в InnoDB.
В новой версии также впервые реализованы стандартные роли SQL. Роль — это именованный набор привилегий, которые могут быть предоставлены определенным пользователям. Разработчики также предоставили функцию SQL, которая возвращает документ graphml, представляющий подграфы ролей. Рассказывая о новой версии в блоге MySQL, Гейр Хойдалсвик сказал:
«В будущем мы планируем использовать« системные роли »при разделении суперпривилегий на более мелкие компоненты».
В новую версию добавлена поддержка невидимых индексов. Невидимый индекс не рассматривается оптимизатором при составлении плана выполнения запроса, но, поскольку индекс все еще поддерживается в фоновом режиме, сделать его снова видимым — дешево.
Объясняя новую функцию в блоге, Хойдалсвик сказал:
«Цель этого состоит в том, чтобы администратор базы данных / DevOp мог определить, можно ли отбросить индекс. Если вы подозреваете, что индекс не используется, вы сначала делаете его невидимым, затем отслеживаете производительность запроса и, наконец, удаляете индекс, если запросы не замедляются есть опыт. Эту функцию просили многие пользователи, например Dropbox «.
Другие улучшения включают расширение побитовых операций, включая возможность их использования с двоичными типами данных, IPV6 и манипуляции с UUID; добавление Set Persist для глобальных переменных, чтобы вы могли сохранять глобальные динамические переменные сервера и сохранять настройку после перезапуска сервера.
Схема производительности была улучшена с возможностью просмотра совокупного количества сообщений об ошибках, сообщаемых сервером, и более быстрых запросов схемы за счет добавления 100 предопределенных индексов в таблицы схемы производительности.
Сообщение в блоге о новом выпуске включает в себя подробную информацию обо всех других улучшениях и глубокое погружение в словарь транзакционных данных.