Firma Oracle stworzyła nową gałąź systemu baz danych MySQL 9.6.0. Kompilacje MySQL Community Server 9.6.0 są przygotowane dla wszystkich głównych dystrybucji Linux, FreeBSD, macOS i Windows. Zgodnie z wprowadzonym w 2023 roku modelem tworzenia wydań, MySQL 9.6 został przypisany do gałęzi „Innowacja”. Gałęzie innowacyjne są zalecane dla tych, którzy chcą wcześniej uzyskać dostęp do nowych funkcji, są publikowane co 3 miesiące i są wspierane tylko do czasu wydania następnego znaczącego wydania (na przykład po powstaniu gałęzi 9.6 wsparcie dla gałęzi 9.5 zostaje zakończone). W przyszłości planowane jest utworzenie wydania LTS 9.7, rekomendowanego dla wdrożeń wymagających przewidywalności i długoterminowego zachowania niezmienności. Po wydaniu LTS powstanie nowa gałąź innowacyjna — MySQL 10.0.
Lista istotnych zmian w MySQL 9.6 całkowicie powtarza raport o zmianach w MySQL 9.5. Wspomniano w nim również wcześniej zauważoną zmianę zachowania parametru „innodb_log_writer_threads”, zmianę wartości domyślnej parametru „binlog_transaction_dependency_history_size”, ogłoszenie metody uwierzytelniania SCRAM-SHA-1 jako przestarzałej oraz zakończenie wsparcia dla zmiennych „group_replication_allow_local_lower_version_join” i „replica_parallel_type”. Całkowita lista poprawek różni się i zawiera następujące istotne zmiany:
- Przeprojektowano system audytu, w którym wprowadzono modułową podsystem Audit Log, umożliwiającą oddzielne instalowanie i zarządzanie różnymi komponentami do prowadzenia logu audytu oraz ułatwiającą konfigurację formatu logów, lokalizacji plików audytu i parametrów buforowania. Aby zmienić zmienną systemową audit_log_rotate_on_size, wymagane są teraz uprawnienia AUDIT_ADMIN.
- Zastosowano nową strukturę danych oraz nową wbudowaną bibliotekę funkcji do pracy z zestawami globalnych identyfikatorów transakcji (GTID, Global Transaction ID), używanych przy replikacji. Nowa implementacja charakteryzuje się bardziej wysoką wydajnością i uproszczeniem kodu.
- W magazynie InnoDB zwiększono efektywność generowania unikalnych identyfikatorów rowid w tabelach bez kluczy głównych. Rozwiązano problem z nieprawidłowym przywracaniem stanu transakcji, które w momencie awaryjnego zakończenia miały status „PREPARED”.
- Dodano nową opcję „—container_aware”, która podczas uruchamiania aktywuje określanie nałożonych w kontenerze ograniczeń dotyczących CPU i pamięci.
- Rozszerzone możliwości debugowania replikacji.
- Funkcje SQL MD5() i SHA1() zostały wydzielone do oddzielnego komponentu «classic_hashing», który można wyłączyć w razie potrzeby, aby zablokować użycie niebezpiecznych algorytmów haszowania.
- Usunięto 14 luk w zabezpieczeniach, z czego dwie mogą być wykorzystywane zdalnie. Najpoważniejszy problem ma krytyczny poziom zagrożenia (9.8), występuje w oficjalnym obrazie Dockera z MySQL i dotyczy luki w bibliotece SQLite (CVE-2025-6965), która jest wykorzystywana w narzędziach pomocniczych do konfiguracji i pracy z MySQL. Druga zdalnie wykorzystywana luka ma poziom zagrożenia 7.5 i jest spowodowana przepełnieniem bufora (CVE-2025-9230) w bibliotece OpenSSL. Mniej niebezpieczne luki dotyczą OpenSSL, InnoDB, optymalizatora, DDL, parsera, Pluggable Auth i Thread Pooling. Szczegóły nie są na razie podawane.
Źródło: opennet.ru
