TGViewer
The Fly's PHP - Делаем из Мухи Слона The Fly's PHP - Делаем из Мухи Слона @flyphp · 414 subscribers
Post #73 715
Всем доброго дня!

Незаметно вышел очередной инновационный релиз MySQL 9.0, по уже устоявшейся стратегии изменений не так уж и много, итак что имеем в итоге:

1. Сохранение вывода JSON из EXPLAIN ANALYZE INTO. Теперь поддерживается сохранение выходных данных JSON из EXPLAIN ANALYZE в пользовательскую переменную с использованием синтаксиса:

EXPLAIN ANALYZE FORMAT=JSON INTO @variable select_stmt

Переменная может быть впоследствии использована как аргумент для работы с JSON.

2. Начиная с MySQL 9.0.0, можно подготовить следующие операторы:
- CREATE EVENT
- ALTER EVENT
- DROP EVENT
в виде параметризованных запросов внутри хранимых процедур с помощью PREPARE и EXECUTE, пример:

delimiter |

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 |

delimiter ;

3. MySQL 9.0 добавляет две новые таблицы, которые предоставляют информацию о системных переменных сервера:

Таблица variables_metadata содержит общую информацию о системных переменных. Эта информация включает имя, область действия, тип, диапазон (где применимо) и описание каждой системной переменной, распознаваемой сервером MySQL. Два столбца в этой таблице ( MIN_VALUE и MAX_VALUE) предназначены для замены устаревших столбцов таблицы variables_info.

В таблице global_variable_attributes представлена ​​информация о парах атрибут-значение, назначенных сервером глобальным системным переменным, таких как например offline_mode или read_only.

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

4. Столбцы таблицы variables_info MIN_VALUE и MAX_VALUE теперь устарели и могут быть удалены в будущем. Вместо этого используйте столбцы таблицы variables_metadata которые имеют те же названия.

5. Ну и самое главное, что скорее всего повлекло за собой увеличение мажорной версии:

Плагин аутентификации mysql_native_password, ранее устаревший в MySQL 8.x, был удален. Теперь сервер отклоняет запросы аутентификации mysql_native от старых клиентов, которые не имеют функции CLIENT_PLUGIN_AUTH.

В связи с этим изменением также были удалены следующие параметры и переменные сервера:

- Серверный параметр --mysql-native-password
- Серверный параметр --mysql-native-password-proxy-users
- Системная переменная сервера default_authentication_plugin
  • 👍 5
  • 🔥 2
  • 👌 1
More from @flyphp
  1. Sep 10, 2026🐘 Пыхник’26 - целая неделя PHP! С 28 сентября по 2 октября собираемся на Пыхнике’26 - онл…
  2. Sep 10, 2026Post #105
  3. Jul 8, 2026Первый официальный State of PHP опрос открыт: https://jb.gg/php-survey-2026 В сообществе у…
  4. Jun 2, 2026Вышел TrueAsync 0.7.0, краеугольная версия, которая определяет необходимый API для асинхро…
  5. May 23, 2026В конце 2025 года проводился ежегодный опрос русскоязычного PHP-сообщества. Результаты опр…
  6. Jan 15, 2026🚀 Большой ежегодный опрос по PHP 🐘 🤘 Присоединяйся и помогай комьюнити становиться толь…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →