Доступна СУБД MySQL 9.0.0

Компания Oracle сформировала новую ветку СУБД MySQL 9.0.0. Сборки MySQL Community Server 9.0.0 подготовлены для всех основных дистрибутивов Linux, FreeBSD, macOS и Windows. В рамках внедрённой в прошлом году модели формирования релизов, MySQL 9.0 отнесён к веткам «Innovation», к которым также будут отнесены следующие значительные релизы MySQL 9.1 и 9.2. Innovation-ветки рекомендованы для тех, кто хочет раньше получать доступ к новой функциональности, публикуются каждые 3 месяца и поддерживаются только до публикации следующего значительного релиза (например, после появления ветки 9.1 будет прекращена поддержка ветки 9.0). Примерно через год планируют сформировать LTS-релиз, который будет рекомендован для внедрений, которым необходима предсказуемость и длительное сохранение неизменного поведения. Следом за LTS-веткой будет сформирована новая Innovation-ветка — MySQL 10.0.

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

  • При выполнении конструкции «EXPLAIN ANALYZE INTO» добавлена возможность сохранения вывода в формате JSON в пользовательскую переменную, которая затем может использоваться в качестве аргумента в функциях для работы с JSON.

       EXPLAIN ANALYZE FORMAT=JSON INTO @variable select_stmt
    
  • Разрешено оформление выражений «CREATE EVENT», «ALTER EVENT» и «DROP EVENT» в виде параметризованных запросов внутри хранимых процедур. Создание параметризованного запроса осуществляется с использованием выражения PREPARE, а выполнение — выражения EXECUTE.
       CREATE PROCEDURE sp(n INT)
       BEGIN
         SET @s1 = "CREATE EVENT e ON SCHEDULE EVERY ";
         SET @s2 = " SECOND
              STARTS CURRENT_TIMESTAMP + INTERVAL 10 SECOND
              ENDS CURRENT_TIMESTAMP + INTERVAL 2 MINUTE
              ON COMPLETION PRESERVE
              DO
              INSERT INTO d.t VALUES ROW(NULL, NOW(), FLOOR(RAND()*100))";
      
         SET @s = CONCAT(@s1, n, @s2);
         PREPARE ps FROM @s;
         EXECUTE ps;
         DEALLOCATE PREPARE ps;
       END
    
  • Добавлены две новые системные таблицы, содержащие сведения о системных переменных: variables_metadata — содержит информацию об именах, области действия, типах и диапазонах значений всех поддерживаемых MySQL-сервером системных переменных; global_variable_attributes — содержит значения атрибутов, выставленных для глобальных переменных, таких как offline_mode и read_only.

  • Удалён ранее объявленный устаревшим серверный плагин mysql_native_password, обеспечивающий аутентификацию при помощи паролей. Вместо mysql_native_password рекомендуется перейти на использование плагина caching_sha2_password, применяющего для хэширования алгоритм SHA2 вместо SHA1.

  • Добавлено 15 переменных для настройки и инспектирования движка MLE (Multilingual Engine Component), позволяющего использовать в хранимых процедурах и функциях код на языках, отличных от SQL.



Источник: http://www.opennet.ru/opennews/art.shtml? num=61476

OpenNet прочитано 2721 раз