MySQL 9.3.0 DBMS izlaidums

Oracle kompānija ir izveidojusi jaunu MySQL 9.3.0 datubāzu vadības sistēmas atzaru. MySQL Community Server 9.3.0 versijas ir sagatavotas visiem galvenajiem Linux, FreeBSD, macOS un Windows izplatījumiem. Saskaņā ar 2023. gadā ieviesto jauno izlaišanas modeļa principu, MySQL 9.3 ir klasificēts kā "Innovation" atzars. Inovāciju atzarus ieteicams lietot tiem, kas vēlas agrāk piekļūt jaunajai funkcionalitātei, tie tiek publicēti ik pēc trim mēnešiem un tiek atbalstīti tikai līdz nākamā būtiskā izlaišanas publicēšanai (piemēram, pēc 9.3 atzara parādīšanās tiek pārtraukta 9.2 atzara atbalsts). Vasarā plānots izveidot LTS izlaišanu 9.4, kas ieteicama ieviešanām, kurām nepieciešama prognozējamība un ilgstoša nemainīga uzvedība. Pēc LTS atzara tiks izveidots jauns inovāciju atzars — MySQL 10.0.

Galvenās izmaiņas MySQL 9.3:

  • Mysqldump rīkam pievienota opcija «—users» loģisko dublējumu veidošanai ar informāciju par visām kontiem, ko izejā izvada SQL izteikumi «CREATE USER» un «GRANT». Lai pirms «CREATE USER» iekļautu izteikumu «DROP USER», ir paredzēta opcija «—add-drop-user», bet konkrētu lietotāju atlasei dublējumā ir opcijas «—include-user=user@host» un «—exclude-user=user@host», ko var norādīt vairākas reizes.
  • MULTILINGVĀLAIS ENGIN VARIANTS (MLE) ir uzlabota JavaScript atbalsts. JavaScript valodā uzrakstītām glabātajām procedūrām ir realizēts «DECIMAL» tips, ko var lietot ienākošiem un atgriežamiem argumentiem. Drošības nolūkos MySQL DECIMAL tips pēc noklusējuma tiek konvertēts JavaScript tipā «String», taču šo uzvedību var pārrakstīt ar komandu ‘SELECT mle_set_session_state(‘{«decimal_type»:»Number»}’)’, pēc kuras tiks izmantots JavaScript tips «Number». Atbalstīta tipa DECIMAL konvertēšana vērtībām ar JavaScript tipiem Boolean, Number, String un BigInt.
  • Glabātajām procedūrām uz JavaScript pievienots atbalsts lokalizācijas parametrus iestatīšanai, izmantojot JavaScript API Intl. Piemēram, pašreizējās lokalizācijas noteikšanai var izmantot īpašības «Intl.DateTimeFormat().resolvedOptions().locale», bet lokalizācijas pārrakstīšanai — metodi «toLocaleString()».
  • Paplašinātas iespējas JavaScript bibliotēku pārvaldībai: tagad, lai mainītu importēto bibliotēku sarakstu, var izmantot izteiksmes „ALTER PROCEDURE” un „ALTER FUNCTION”. Tika pievienota iespēja izmantot izteiksmi „ALTER LIBRARY”, lai pievienotu, dzēstu vai mainītu SQL komentāru bibliotēkai. Informācijas iegūšanai par bibliotēku ieviesta izteiksme „SHOW LIBRARY STATUS”.
  • Pievienota atbalsts dinamiskai JavaScript bibliotēku ielādei. Dinamiskai bibliotēkas importēšanai jāizmanto atslēgvārds „await”, piemēram, „let module = await import(‘/db1/lib_${object_type}’)”.
  • Paplašinātas vaicājumu optimizācijas, kas izmanto kvantificētus salīdzinošos operatorus. Papildus atbalstam operatoriem „=ANY” un „ALL” apakšvaicājumu optimizēšanā jaunajā versijā pievienots atbalsts operatoriem „>ANY”, „>=ANY”, „<ANY”, „ALL”, „>=ALL”, „<ALL” un „<=ALL”.
  • Tika noņemts spraudnis „version_tokens”, iepriekš deklarēts kā novecojis.
  • Aizliegts izvirzīt 0 vērtību sistēmiskajai mainīgajai replica_parallel_workers.
  • Novērsti 28 ievainojamības, no kurām 26 var tikt izmantotas attālināti ar piekļuvi, lai nosūtītu pieprasījumus uz DBMS. Sešas nopietnākās problēmas ir ar bīstamības līmeni 6.5 un saistītas ar ievainojamībām InnoDB dzinējā, parsētājā un optimizētājā. Mazāk bīstamas ievainojamības ietekmē mysqldump, InnoDB, optimizētāju, DDL, UDF, parsētāju un replikācijas sistēmu.

Avots: opennet.lv

Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster