Oracle har bildat en ny gren av databashanteraren MySQL 8.4 och publicerat en korrigerande uppdatering av MySQL 8.0.37. Byggnaderna av MySQL Community Server 8.4.0 har förberetts för alla större distributioner av Linux, FreeBSD, macOS och Windows. UtgÄvan 8.4.0 klassas som en lÄngsiktig stödgren (LTS), som slÀpps varannan Är och stöds i 5 Är (plus möjlighet till ytterligare 3 Ärs utökat stöd).
MySQL 8.4.0 Ă€r den fjĂ€rde utgĂ„van som bildats inom ramen för den nya modellen för utgivning av versioner, som inkluderar tvĂ„ typer av MySQL-grenar â "Innovation" och "LTS". Innovation-grenarna, som omfattar MySQL 8.1, 8.2 och 8.3, rekommenderas för dem som vill fĂ„ tidig tillgĂ„ng till ny funktionalitet. Dessa grenar publiceras var tredje mĂ„nad och stöds endast fram till publiceringen av nĂ€sta betydande utgĂ„va (till exempel, efter att grenen 8.4 har kommit, upphör stödet för grenen 8.3). LTS-grenar rekommenderas för implementationer som krĂ€ver förutsĂ€gbarhet och lĂ„ngvarig bevarande av oförĂ€ndrat beteende. Efter LTS-grenen kommer en ny Innovation-gren att bildas â MySQL 9.0.
Huvudsakliga Àndringar i MySQL 8.4:
- Optimeraren har fÄtt stöd för automatisk uppdatering av histogram, oavsett om operationen "ANALYZE TABLE" utförs för övergripande tabell. Automatisk uppdatering aktiveras genom att ange uttrycket "AUTO UPDATE" vid utförande av operationen "ANALYZE TABLE", och inaktiveras genom att ange uttrycket "MANUAL UPDATE", som anvÀnds som standard.
- Nya alternativ "âkeyring-migration-from-component", "âkeyring-migration-source" och "âkeyring-migration-destination" har lagts till för migrering frĂ„n komponentkeyring till keyring-plugin.
- En ny privilegium FLUSH_PRIVILEGES har lagts till, som i motsats till den tidigare tillgÀngliga privilegiet RELOAD, ger anvÀndaren rÀtt endast att utföra operationen "FLUSH PRIVILEGES".
- Ett nytt privilegium OPTIMIZE_LOCAL_TABLE har lagts till, vilket tillÄter anvÀndaren att utföra operationerna "OPTIMIZE LOCAL TABLE" och "OPTIMIZE NO_WRITE_TO_BINLOG TABLE".
- StandardvÀrdena för systemvariablerna group_replication_consistency och group_replication_exit_state_action har Àndrats. Variabeln group_replication_consistency stÀlls nu in pÄ vÀrdena BEFORE_ON_PRIMARY_FAILOVER istÀllet för EVENTUAL, och variabeln group_replication_exit_state_action till OFFLINE_MODE istÀllet för READ_ONLY.
- I de versioner som levereras med den inbyggda OpenSSL-biblioteket anvÀnds den nya versionen OpenSSL 3.0.13.
- Direktuppdatering frÄn MySQL 5.7 till MySQL 8.4 har avbrutits. För att uppgradera frÄn MySQL 5.7 bör man först gÄ till grenen 8.0 och sedan uppgradera till version 8.4.
- StandardinstÀllningar för följande InnoDB-konfigurationer har Àndrats: innodb_adaptive_hash_index, innodb_buffer_pool_in_core_file, innodb_buffer_pool_instances, innodb_change_buffering, innodb_doublewrite_files, innodb_doublewrite_pages, innodb_flush_method, innodb_io_capacity, innodb_io_capacity_max, innodb_log_buffer_size, innodb_numa_interleave, innodb_page_cleaners, innodb_parallel_read_threads, innodb_purge_threads, innodb_read_io_threads, innodb_use_fdatasync, temptable_max_ram, temptable_max_mmap och temptable_use_mmap.
- Stöd för paketbyggande för dispytionerna Fedora 40 och Ubuntu 24.04 har lagts till.
- Den serverplugin mysql_native_password, som möjliggör autentisering med hjĂ€lp av lösenord, har som standard avaktiverats och förklarats som förĂ„ldrad. Det rekommenderas att övergĂ„ till pluginet caching_sha2_password, som anvĂ€nder SHA2-algoritmen för hashning istĂ€llet för SHA1. För att Ă„terfĂ„ stöd för mysql_native_password kan alternativet "âmysql-native-password=ON" eller instĂ€llningen "mysql_native_password=ON" anvĂ€ndas.
- Stöd för osÀkra protokoll och krypteringsalgoritmer har avbrutits. Endast TLS v1.2 och TLS v1.3, algoritmer som ger framÄtriktad sekretess, chiffer och certifikat med SHA2, samt algoritmer AES i lÀget GCM eller AEAD, har kvarstÄtt.
- SQL-uttryck som Àr relaterade till replikering och tidigare har förklarats som förÄldrade har tagits bort pÄ grund av anvÀndningen av olÀmplig terminologi: START SLAVE (ersÀtt med START REPLICA); STOP SLAVE (ersÀtt med STOP REPLICA); SHOW SLAVE STATUS (ersÀtt med SHOW REPLICA STATUS); SHOW SLAVE HOSTS (SHOW REPLICAS); RESET SLAVE (RESET REPLICA); CHANGE MASTER TO (CHANGE REPLICATION SOURCE TO); RESET MASTER (RESET BINARY LOGS AND GTIDS); SHOW MASTER STATUS (SHOW BINARY LOG STATUS); PURGE MASTER LOGS (PURGE BINARY LOGS); SHOW MASTER LOGS (SHOW BINARY LOGS).
- Tidigare aviserade förÄldrade alternativ som anvÀndes i uttrycken "CHANGE REPLICATION SOURCE TO" och "START REPLICA" har tagits bort, och ordet "master" har ersatts med "source": SOURCE_AUTO_POSITION (anvÀnd SOURCE_AUTO_POSITION istÀllet), SOURCE_HOST (anvÀnd SOURCE_HOST istÀllet), SOURCE_BIND (anvÀnd SOURCE_BIND istÀllet), SOURCE_USER (SOURCE_USER), SOURCE_PASSWORD (SOURCE_PASSWORD), SOURCE_PORT (SOURCE_PORT), SOURCE_CONNECT_RETRY (SOURCE_CONNECT_RETRY), SOURCE_RETRY_COUNT (SOURCE_RETRY_COUNT), SOURCE_DELAY (SOURCE_DELAY), SOURCE_SSL (SOURCE_SSL), SOURCE_SSL_CA (SOURCE_SSL_CA), SOURCE_SSL_CAPATH (SOURCE_SSL_CAPATH), SOURCE_SSL_CIPHER (SOURCE_SSL_CIPHER), SOURCE_SSL_CRL (SOURCE_SSL_CRL), SOURCE_SSL_CRLPATH (SOURCE_SSL_CRLPATH), SOURCE_SSL_KEY (SOURCE_SSL_KEY), SOURCE_SSL_VERIFY_SERVER_CERT (SOURCE_SSL_VERIFY_SERVER_CERT), SOURCE_TLS_VERSION (SOURCE_TLS_VERSION), SOURCE_TLS_CIPHERSUITES (SOURCE_TLS_CIPHERSUITES), SOURCE_SSL_CERT (SOURCE_SSL_CERT), SOURCE_PUBLIC_KEY_PATH (SOURCE_PUBLIC_KEY_PATH), GET_SOURCE_PUBLIC_KEY (GET_SOURCE_PUBLIC_KEY), SOURCE_HEARTBEAT_PERIOD (SOURCE_HEARTBEAT_PERIOD), SOURCE_COMPRESSION_ALGORITHMS (SOURCE_COMPRESSION_ALGORITHMS), SOURCE_ZSTD_COMPRESSION_LEVEL (SOURCE_ZSTD_COMPRESSION_LEVEL), SOURCE_LOG_FILE (SOURCE_LOG_FILE), SOURCE_LOG_POS (SOURCE_LOG_POS).
- Systemvariabler dÀr orden "master" och "slave" anvÀndes har tagits bort: Com_replica_start (anvÀnd Com_replica_start istÀllet); Com_replica_stop (anvÀnd Com_replica_stop); Com_show_replica_status (anvÀnd Com_show_replica_status); Com_show_replicas (anvÀnd Com_show_replicas); Com_show_binary_log_status (anvÀnd Com_show_binary_log_status); och Com_change_replication_source (anvÀnd Com_change_replication_source).
- Systemvariabeln group_replication_allow_local_lower_version_join har förklarats som förĂ„ldrad. Tidigare aviserade förĂ„ldrade alternativ "âno-dd-upgrade", "âold", "ânew", "âlanguage", "âssl"âadmin-ssl" och variablerna binlog_transaction_dependency_tracking, group_replication_recovery_complete_at, avoid_temporal_upgrade, show_old_temporals och default_authentication_plugin har tagits bort.
- Den oanvÀnda tabellen INFORMATION_SCHEMA.TABLESPACES har tagits bort.
- Stödet för att anvÀnda vÀrdet LOW_PRIORITY tillsammans med uttrycket "LOCK TABLES ⊠WRITE" har upphört.
- Stödet för att anvÀnda modifieraren AUTO_INCREMENT tillsammans med datatyperna FLOAT och DOUBLE har upphört.
- Verktyget mysql_ssl_rsa_setup har tagits bort vid byggnation med OpenSSL. server MySQL kan automatiskt generera saknade SSL- och RSA-filer vid start.
- Verktyget mysql_upgrade, som inte anvÀnds med versionen MySQL 8.0.16, har tagits bort.
- Verktygen mysqlpump, lz4_decompress och zlib_decompress har tagits bort, och istÀllet bör verktyget mysqldump eller kommandon för dumpning i den interaktiva skalet anvÀndas.
- Plugins har tagits bort: authentication_fido, authentication_fido_client (anvÀnd authentication_webauthn istÀllet); keyring_file (anvÀnd component_keyring_file istÀllet); keyring_encrypted_file (anvÀnd component_keyring_encrypted_file istÀllet); keyring_oci (anvÀnd component_keyring_oci istÀllet).
- Stöd för uttrycket ENGINE har upphört, tillsammans med olika varianter av «DROP TABLESPACE» och «ALTER TABLESPACE».
- Privilegiet «SET_USER_ID» har tagits bort och kan inte lÀngre anges i uttalanden GRANT.
- Funktionerna av API:erna mysql_kill(), mysql_list_fields(), mysql_list_processes(), mysql_refresh(), mysql_reload(), mysql_shutdown() och mysql_ssl_set() har Äterinförts, varav en del har omarbetats med hjÀlp av funktionen mysql_real_query(). Dessa funktioner togs bort i MySQL 8.3 men Äterinfördes för att stödjas inom LTS-grenen av MySQL 8.4.
- 26 sÄrbarheter som kan utnyttjas pÄ distans har ÄtgÀrdats. Det mest allvarliga problemet har en risknivÄ pÄ 6.5 och Àr relaterat till en sÄrbarhet i openSSL. Mindre farliga sÄrbarheter pÄverkar optimeraren, InnoDB, Thread Pooling, Group Replication Plugin, Audit Plugin, DML, mysqldump.
KĂ€lla: opennet.ru
