Страницы 1
Восьмая версия популярной СУБД находится в активной разработке уже более года, уже было выпущено несколько DR релизов, однако это событие в сети освещается очень слабо, несмотря на то, что релиз несет в себе огромное количество изменений. Так чего же нам ждать от новой версии MySQL?
Закат MyISAM
Все системные таблицы уже переведены на InnoDB. Также представлены изменения, которые накладывают ограничения на использование MyISAM в новой версии - например нельзя просто взять и скопировать MyISAM таблицы на запущенный MySQL сервер, они не будут распознаны. В InnoDB уже реализовали все фичи, которые считались преимуществами MyISAM, и из последних осталось лишь то, что таблицы MyISAM заимают меньше места на диске и запросы count(*) отрабатывают намного быстрее. К тому же InnoDB получил целый ряд новых возможностей, например настройка innodb_dedicated_server, которая позволяет автоматически устанавливать значения для innodb_buffer_pool_size, innodb_log_file_size и innodb_flush_method в зависимости от памяти на сервере.
Улучшения словаря данных
MySQL Server теперь включает транзакционный словарь данных, который хранит информацию о объектах базы данных. В предыдущих версиях MySQL данные словаря хранились в файлах метаданных и в непереходных таблицах.
Улучшения JSON функционала
Все мы помним про новый функционал для работы с JSON в MySQL которые появились в версии 5.7 (Испытываем новые JSON возможности в MySQL 5.7 и Использование JSON в MySQL). В восьмой версии этот функционал значительно расширится. Например добавлен оператор ->>, который является эквивалентом вызова JSON_UNQUOTE() на результате JSON_EXTRACT(). Функции аггрегирования JSON_ARRAYAGG() и JSON_OBJECTAGG(), добавлена возможность частичного обновления JSON колонки (что эффективней чем полное удаление текущего значения и запись нового), добавлена возможность использования диапазонов в XPath выражениях, функция JSON_MERGE() и много другое.
Оптимизатор
Добавлены невидимые и нисходящие индексы. Невидимые не используются оптимизатором, но позволяют протестировать изменение производительности от удаления индекса. И теперь при определении индекса ключ DESC больше не игнорируется, вместо этого индексы будут хранится в обратном порядке, что может быть эффективней в некоторых случаях.
Роли
Новая заманчивая возможность восьмой версии - теперь можно создавать свои роли и закреплять за ними нужные привилегии. Например:
CREATE ROLE 'developer_role';
GRANT SELECT ON database.* TO 'developer_role';
GRANT 'developer_role' TO 'user'@'localhost';
Кодировка по умолчанию
Все знают, что в версиях 5.x кодировкой по умолчанию является latin1, однако начиная с версии 8.0.0 стандартной кодировкой будет utf8mb4. Теперь можно будет не переживать за сохранность emoji и других мультибайтовых символов.
Изучаем и берем на вооружение!
Слишком умных жизнь сама чешет с двух боков: горе им и от ума, и от мудаков
Вне форума
Страницы 1
[ Сгенерировано за 0.017 сек, 8 запросов выполнено - Использовано памяти: 557.55 Кбайт (Пик: 976.27 Кбайт) ]