Компания Oracle създаде нов клон на СУБД MySQL 8.3 и публикува коригиращо обновление MySQL 8.0.36. Сборките на MySQL Community Server 8.3.0 са подготвени за всички основни дистрибуции на Linux, FreeBSD, macOS и Windows.
MySQL 8.3.0 е третото издание, създадено в рамките на новия модел на издаване, който предвижда наличие на два типа клони на MySQL - «Innovation» и «LTS». Клоните Innovation, към които спадат MySQL 8.1, 8.2 и 8.3, се препоръчват за тези, които искат по-рано да имат достъп до нови функции. Тези клони се публикуват на всеки 3 месеца и се поддържат само до публикуването на следващото значимо издание (например, след появата на клона 8.3, поддръжката на клона 8.2 прекратява). LTS-клоните са препоръчителни за внедряване, на което е необходимо предсказуемо и дългосрочно неизменно поведение. LTS клони ще бъдат издавани на всеки две години и ще бъдат поддържани редовно в продължение на 5 години, в допълнение, може да бъде получена още 3 години разширена поддръжка. През пролетта на 2024 година се очаква LTS-релиз на MySQL 8.4, след който ще бъде създаден нов клон Innovation 9.0.
Основни промени в MySQL 8.3:
- Отстранени са 25 уязвимости, от които една (CVE-2023-5363, засягаща OpenSSL) може да бъде експлоатирана дистанционно. Най-сериозният проблем, свързан с използването на протокола Kerberos, е оценен на ниво опасност 8.8. По-малко опасните уязвимости с ниво на опасност 6.5 засягат оптимизатора, UDF, DDL, DML, репликацията, системата за привилегии и средствата за шифроване.
- На платформата Linux е добавена поддръжка на линкера mold. За включване е предвидена опцията «-DWITH_LD=mold|lld».
- Изискванията за стандартът на поддържания компилатор C++ са повишени от C++17 до C++20.
- Поддръжката на сборка с външни библиотеки Boost C++ е прекратена — при компилиране на MySQL сега се използват само вградени библиотеки Boost. В CMake са премахнати сборочните опции WITH_BOOST, DOWNLOAD_BOOST и DOWNLOAD_BOOST_TIMEOUT.
- Поддръжката на сборка в Visual Studio 2022 е прекратена. Най-малко поддържаната версия на инструмента Clang е повишена от Clang 10 до Clang 12.
- В MySQL Enterprise Edition е добавена поддръжка за събиране на телеметрия с метрики за производителност сървър в формат OpenTelemetry и предаване на данни на съответстващ мрежови обработчик.
- Разширен формат на глобалния идентификатор на транзакцията GTID, приложен при репликацията за идентификация на групи транзакции. Новият формат GTID е «UUID::NUMBER» (вместо «UUID:NUMBER»), където TAG е произволен низ, позволяващ назначаването на уникални имена на определена група транзакции за улесняване на обработката и анализа.
- Добавени са две нови променливи «Deprecated_use_i_s_processlist_count» и «Deprecated_use_i_s_processlist_last_timestamp» за проследяване на използването на остарялата таблица INFORMATION_SCHEMA.PROCESSLIST.
- Настройката на променливата на средата AUTHENTICATION_PAM_LOG вече не показва пароли в диагностичните съобщения (за споменаване на парола е необходимо задаване на стойност PAM_LOG_WITH_SECRET_INFO).
- Добавена е таблица tp_connections с информация за всяко свързване в пула от потоци.
- Добавена е системна променлива «explain_json_format_version» за избор на версията на JSON формата, използвана в изрази «EXPLAIN FORMAT=JSON».
- В хранилището InnoDB са премахнати параметрите «—innodb» и «—skip-innodb», които бяха обявени за остарели още в изданието MySQL 5.6. Премахнат е плъгинът memcached за InnoDB, обявен за остарял в MySQL 8.0.22.
- Премахнати са някои настройки и опции от командния ред, свързани с репликацията, които бяха обявени за остарели в предишни издания: «—slave-rows-search-algorithms», «—relay-log-info-file», «—relay-log-info-repository», «—master-info-file», «—master-info-repository», «log_bin_use_v1_events», «transaction_write_set_extraction», «group_replication_ip_whitelist», «group_replication_primary_member». Приключена е възможността за използване на опцията IGNORE_SERVER_IDS с режима на репликация GTID (gtid_mode=ON).
- Поддръжката на С API функции: mysql_kill(), mysql_list_fields(), mysql_list_processes(), mysql_refresh(), mysql_reload(), mysql_shutdown(), mysql_ssl_set() е прекратена.
- Поддръжката на израза «FLUSH HOSTS», обявен за остарял в MySQL 8.0.23, е прекратена.
Източник: opennet.ru
