Oracle wydało nową gałąź MySQL 9.6.0. Wersje MySQL Community Server 9.6.0 są dostępne dla wszystkich głównych dystrybucji. Linux, FreeBSD, macOS и WindowsZgodnie z modelem wydań wdrożonym w 2023 roku, MySQL 9.6 jest przypisany do gałęzi „Innowacja”. Gałęzie innowacji są zalecane dla użytkowników, którzy chcą mieć wczesny dostęp do nowych funkcjonalności. Są one wydawane co trzy miesiące i są wspierane tylko do następnej głównej wersji (na przykład po wydaniu gałęzi 9.6, wsparcie dla gałęzi 9.5 zostało zakończone). W późniejszym czasie planowane jest wydanie wersji LTS 9.7, zalecanej dla wdrożeń wymagających przewidywalności i długoterminowej stabilności. Po tej wersji LTS zostanie utworzona nowa gałąź innowacji: MySQL 10.0.
Lista istotnych zmian w MySQL 9.6 jest identyczna z listą zmian w MySQL 9.5. Obejmuje ona również wcześniej odnotowaną zmianę w zachowaniu parametru „innodb_log_writer_threads”, zmianę wartości domyślnej parametru „binlog_transaction_dependency_history_size”, wycofanie metody uwierzytelniania SCRAM-SHA-1 oraz usunięcie obsługi zmiennych „group_replication_allow_local_lower_version_join” i „replica_parallel_type”. Ogólna lista poprawek różni się i zawiera następujące istotne zmiany:
- System audytu został przeprojektowany, implementując modułowy podsystem Audit Log. Pozwala to na oddzielną instalację i zarządzanie różnymi komponentami rejestrowania audytu, a także upraszcza konfigurację formatów dziennika, lokalizacji plików audytu i parametrów buforowania. Zmiana zmiennej systemowej audit_log_rotate_on_size wymaga teraz uprawnień AUDIT_ADMIN.
- Zastosowano nową strukturę danych i nową wbudowaną bibliotekę funkcji do pracy z zestawami globalnych identyfikatorów transakcji (GTID) używanych w replikacji. Nowa implementacja jest bardziej wysoka wydajność i uproszczenie kodu.
- Pamięć masowa InnoDB poprawiła wydajność generowania unikalnych identyfikatorów wierszy w tabelach bez kluczy podstawowych. Rozwiązano problem z nieprawidłowym odzyskiwaniem transakcji, które w momencie awarii miały status „PREPARED”.
- Dodano nową opcję „--container_aware”, która umożliwia wykrywanie limitów procesora i pamięci ustawionych w kontenerze podczas uruchamiania.
- Rozszerzone możliwości debugowania replikacji.
- Funkcje SQL MD5() i SHA1() są wydzielone w osobnym komponencie „classic_hashing”, który można w razie potrzeby wyłączyć, aby zablokować stosowanie niebezpiecznych algorytmów haszujących.
- Naprawiono czternaście luk, z których dwie można wykorzystać zdalnie. Najpoważniejszy problem, oznaczony jako krytyczny (9.8), występuje w oficjalnym obrazie MySQL Docker i jest powiązany z luką w bibliotece SQLite (CVE-2025-6965), używanej w narzędziach pomocniczych do konfiguracji i pracy z MySQL. Druga luka, możliwa do zdalnego wykorzystania, opisana jako poważny problem 7.5, jest spowodowana przepełnieniem bufora (CVE-2025-9230) w bibliotece OpenSSL. Mniej poważne luki dotyczą OpenSSL, InnoDB, optymalizatora, języka DDL, parsera, uwierzytelniania typu Pluggable Auth i pulowania wątków. Szczegóły nie zostały jeszcze opublikowane.
Źródło: opennet.ru
