Oracle har dannet en ny gren av databasesystemet MySQL 8.2 og publisert korrektive oppdateringer for MySQL 8.0.35 og 5.7.44. Byggene av MySQL Community Server 8.2.0 er forberedt for alle hoveddistribusjoner av Linux, FreeBSD, macOS og Windows.
MySQL 8.2.0 er den andre utgivelsen som er dannet innenfor den nye mod modellen for utgivelse, som innebÊrer eksistensen av to typer grener av MySQL - «Innovasjon» og «LTS». Innovasjonsgrenene, som inkluderer MySQL 8.1 og 8.2, anbefales for de som Þnsker Ä fÄ tidlig tilgang til ny funksjonalitet. Disse grenene publiseres hver 3. mÄned og stÞttes bare til neste betydelige utgivelse (for eksempel, nÄr grenen 8.2 utgis, vil stÞtten for grenen 8.1 opphÞre). LTS-grenene anbefales for implementasjoner som trenger forutsigbarhet og langvarig stabilitet. LTS-grenene vil bli utgitt hvert annet Är og stÞttes regelmessig i 5 Är, i tillegg til at det vil vÊre 3 Är med utvidet stÞtte. En LTS-utgivelse av MySQL 8.4 er forventet vÄren 2024, etter hvilken en ny innovasjonsgren 9.0 vil bli dannet.
Viktige endringer i MySQL 8.2:
- StÞtte for autentiseringsmekanismen basert pÄ Webauthn-spesifikasjonen (FIDO2) er lagt til, noe som muliggjÞr flerfaktorautentisering og bekreftelse av tilkoblingen til server MySQL uten passord, ved Ä bruke maskinvare-token som stÞtter FIDO2 eller biometrisk autentisering. Plugin-modulen med stÞtte for Webauthn er forelÞpig kun tilgjengelig for MySQL Enterprise.
- Server-plugin-modulen mysql_native_password, som muliggjÞr autentisering med passord, er flyttet til kategorien valgfri og kan deaktiveres. Det anbefales Ä gÄ over fra mysql_native_password til bruken av plugin-modulen caching_sha2_password, som bruker SHA2-algoritmen for hashing i stedet for SHA1. For Ä bytte brukere til plugin-modulen caching_sha2_password med et tilfeldig passord kan kommandoen brukes: ALTER USER 'username'@'localhost' IDENTIFIED WITH caching_sha2_password BY RANDOM PASSWORD PASSWORD EXPIRE FAILED_LOGIN_ATTEMPTS 3 PASSWORD_LOCK_TIME 2;
- Optimaliseringen av hash-tabeller har muliggjort raskere utfĂžrelse av EXCEPT- og INTERSECT-operasjoner.
- Debbuging-mulighetene er utvidet. I operasjonene SELECT, INSERT, REPLACE, UPDATE og DELETE er stÞtte for uttrykket «EXPLAIN FORMAT=JSON» lagt til for Ä generere diagnostisk utdata i JSON-format (for eksempel, «EXPLAIN FORMAT=JSON INTO @var select_stmt;»).
- Uttrykket «EXPLAIN FOR SCHEMA» er lagt til for Ä vise diagnostikk relatert til en bestemt dataskjema.
- Det er lagt til et alternativ «âoutput-as-version» i verktĂžyet mysqldump for Ă„ lage dumps som er kompatible med en bestemt eldre versjon av MySQL (for eksempel kan du spesifisere BEFORE_8_2_0 eller BEFORE_8_0_23 for Ă„ gĂ„ tilbake til den uhensiktsmessige terminologien master/slave, som ble erklĂŠrt utdatert i utgavene 8.2.0 og 8.0.23).
- Den klientside C-biblioteket har fÄtt muligheten til Ä bruke navngitte attributter i parametrisert spÞrringer (prepared statement), implementert ved hjelp av den nye funksjonen mysql_stmt_bind_named_param(), som erstatter funksjonen mysql_stmt_bind_param().
- Distribusjonen av SQL-trafikk i klynger av MySQL-servere er forenklet. Det er gitt muligheter for Ă„ organisere applikasjonsgjennomsiktige tilkoblinger til sekundĂŠre eller primĂŠre servere.
- Det er lagt til en ny privilegium SET_ANY_DEFINER, som gir rett til Ă„ opprette objekter med DEFINER-uttrykk, samt privilegiet ALLOW_NONEXISTENT_DEFINER for Ă„ beskytte objekter uten eier.
- FĂžlgende er erklĂŠrt utdatert: variablene old og new, maskene «%» og «_» i operasjoner for tilgang til databasen, alternativet «âcharacter-set-client-handshake», variabelen binlog_transaction_dependency_tracking og privilegiet SET_USER_ID.
- Som et ledd i justeringen av uhensiktsmessig terminologi relatert til replikering, er uttrykkene «RESET MASTER», «SHOW MASTER STATUS», «SHOW MASTER LOGS» og «PURGE MASTER LOGS» blitt erklÊrt utdatert, og i stedet bÞr fÞlgende uttrykk brukes: «RESET BINARY LOGS AND GTIDS», «SHOW BINARY LOG STATUS», «SHOW BINARY LOGS» og «PURGE BINARY LOGS».
- Muligheter som tidligere ble erklĂŠrt utdatert, er fjernet: funksjonen WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS(), variabelen expire_logs_days, alternativene «âabort-slave-event-count» og «âdisconnect-slave-event-count».
- 26 sÄrbarheter er eliminert. To sÄrbarheter knyttet til bruk av Curl-pakken og OpenSSL-biblioteket kan utnyttes eksternt.
Kilde: opennet.ru
