MySQL 8.2.0 DBMS dostupan

Oracle je formirao novu granu MySQL 8.2 DBMS-a i objavio ispravna ažuriranja za MySQL 8.0.35 i 5.7.44. MySQL Community Server 8.2.0 nadogradnje su pripremljene za sve glavne Linux, FreeBSD, macOS i Windows distribucije.

MySQL 8.2.0 je drugo izdanje formirano prema novom modelu izdanja, koji predviđa prisutnost dvije vrste MySQL grana - "Innovation" i "LTS". Inovacijske grane, koje uključuju MySQL 8.1 i 8.2, preporučuju se onima koji žele ranije pristupiti novoj funkcionalnosti. Ove grane se objavljuju svaka 3 mjeseca i podržane su samo do objave sljedećeg velikog izdanja (na primjer, nakon pojave grane 8.2, podrška za granu 8.1 je ukinuta). LTS grane se preporučuju za implementacije koje zahtijevaju predvidljivost i dugoročno očuvanje nepromijenjenog ponašanja. LTS grane će se objavljivati ​​svake dvije godine i bit će podržane normalno 5 godina, uz to možete dobiti još 3 godine produžene podrške. LTS izdanje MySQL 2024 očekuje se u proljeće 8.4. godine, nakon čega će se formirati novi ogranak Innovation 9.0.

Glavne promjene u MySQL 8.2:

  • Dodana je podrška za mehanizam provjere autentičnosti koji se temelji na specifikaciji Webauthn (FIDO2), što vam omogućuje korištenje višestruke provjere autentičnosti i potvrdu veze s MySQL poslužiteljem bez lozinki korištenjem hardverskih tokena s omogućenim FIDO2 ili biometrijske provjere autentičnosti. Dodatak Webauthn trenutno je dostupan samo za MySQL Enterprise.
  • Dodatak poslužitelja mysql_native_password, koji omogućuje autentifikaciju pomoću lozinki, premješten je u neobaveznu kategoriju i može se onemogućiti. Umjesto mysql_native_password, preporuča se prebaciti na dodatak caching_sha2_password, koji za raspršivanje koristi SHA2 algoritam umjesto SHA1. Za prebacivanje korisnika na dodatak caching_sha2_password i zamjenu lozinke slučajnom, možete koristiti naredbu: ALTER USER 'username'@'localhost' IDENTIFIED WITH caching_sha2_password BY RANDOM PASSWORD PASSWORD EXPIRE FAILED_LOGIN_ATTEMPTS 3 PASSWORD_LOCK_TIME 2;
  • Hash tablice su optimizirane kako bi se ubrzalo izvršavanje operacija EXCEPT i INTERSECT.
  • Mogućnosti otklanjanja pogrešaka su proširene. Operacije SELECT, INSERT, REPLACE, UPDATE i DELETE sada podržavaju izraz "EXPLAIN FORMAT=JSON" za generiranje dijagnostičkog izlaza u JSON formatu (na primjer, "EXPLAIN FORMAT=JSON INTO @var select_stmt;").
  • Dodan izraz "OBJAŠNJENJE SHEME" za prikaz dijagnostike povezane samo s određenom shemom podataka.
  • Dodana je opcija "--output-as-version" uslužnom programu mysqldump za stvaranje ispisa kompatibilnih s određenom starijom verzijom MySQL-a (na primjer, možete navesti BEFORE_8_2_0 ili BEFORE_8_0_23 za vraćanje politički nekorektne master/slave terminologije koja je zastarjela u izdanjima 8.2.0. 8.0.23 i XNUMX ).
  • Mogućnost korištenja imenovanih atributa u parametriziranim upitima (pripremljenim izjavama), implementiranih pomoću nove funkcije mysql_stmt_bind_named_param(), koja je zamijenila funkciju mysql_stmt_bind_param(), dodana je u klijentsku C biblioteku.
  • Pojednostavljena distribucija SQL prometa u klasteru MySQL poslužitelja. Pružene su mogućnosti za organiziranje veza sa sekundarnim ili primarnim poslužiteljima koji su transparentni za aplikacije.
  • Dodana je nova povlastica SET_ANY_DEFINER, koja daje pravo kreiranja objekata s izrazom DEFINER, kao i povlastica ALLOW_NONEXISTENT_DEFINER za zaštitu objekata s odsutnim vlasnikom.
  • Zastarjelo: stare i nove varijable, maske "%" i "_" u operacijama za odobravanje pristupa bazi podataka, opcija "-character-set-client-handshake", varijabla binlog_transaction_dependency_tracking i privilegija SET_USER_ID.
  • Kao dio ispravljanja politički nekorektne terminologije povezane s replikacijom, izrazi "RESET MASTER", "SHOW MASTER STATUS", "SHOW MASTER LOGS" i "PURGE MASTER LOGS" su zastarjeli, a izrazi "RESET BINARY LOGS AND GTIDS" bi trebali koristiti umjesto toga. PRIKAŽI STATUS BINARNOG DNEVNIKA, "PRIKAŽI BINARNE DNEVNIKE" i "PURGE BINARY LOGS".
  • Značajke koje su prethodno zastarjele su uklonjene: funkcija WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS(), varijabla expire_logs_days, opcije "--abort-slave-event-count" i "--disconnect-slave-event-count".
  • Ispravljeno je 26 ranjivosti. Dvije ranjivosti koje se odnose na korištenje Curl paketa i OpenSSL biblioteke mogu se iskoristiti na daljinu.

Izvor: opennet.ru

Dodajte komentar