Liberigo de MySQL DBMS 9.1.0

Oracle kreis novan branĉon de la MySQL 9.1.0 DBMS. MySQL Community Server 9.1.0-konstruaĵoj estas pretaj por ĉiuj ĉefaj distribuoj de Linukso, FreeBSD, macOS kaj Vindozo. Kiel parto de la nova eldonmodelo enkondukita pasintjare, MySQL 9.1 estas klasifikita kiel "Noviga" branĉo, kiu ankaŭ inkluzivos la sekvan gravan eldonon, MySQL 9.2. Novigaj branĉoj estas rekomenditaj por tiuj, kiuj volas fruan aliron al nova funkcieco, estas eldonitaj ĉiujn 3 monatojn kaj estas subtenataj nur ĝis la publikigo de la sekva grava eldono (ekzemple, post la apero de la branĉo 9.1, subteno por la branĉo 9.0 estis ĉesigita). ). Venontsomere ili planas krei LTS-eldonon rekomenditan por efektivigoj, kiuj postulas antaŭvideblecon kaj longdaŭran konservadon de senŝanĝa konduto. Post la LTS-filio, nova Noviga branĉo estos formita - MySQL 10.0.

Gravaj ŝanĝoj en MySQL 9.1:

  • Subteno por la esprimo "IF NE EKZISTAS" estis aldonita al la operacio "CREATE VIEW", kiu ebligas al vi organizi la kreadon de vido nur se vido kun la specifita nomo ne jam ekzistas kaj eviti redoni eraron se la vido. estas jam kreita.
  • Ĉesis ŝarĝi ellasilon dum farado de nurlegeblaj operacioj. Antaŭe, ellasiloj estis ŝarĝitaj kiam ajn tablo estis alirita, malŝparante memoron kaj kreante CPU-ŝarĝon en situacioj kie ellasiloj ne estis uzitaj (ekzemple, dum efektivigado de SELECT-demandoj). En MySQL 9.1, prilaborado kaj ŝarĝo de ellasiloj estas dividitaj en du stadiojn: legado de metadatenoj pri la ellasilo kaj analizo + ekzekuti la ellasilon. La datumoj akiritaj en la unua etapo estas stokitaj unufoje kaj poste dividitaj tra malsamaj ellasilinstancoj. La ellasilo estas analizita kaj efektivigita nur por esprimoj, kiuj ŝanĝas datumojn. Krome, por redukti konsumon de memoro, anstataŭ statike asigni bufrojn por erartraktado en ellasiloj, ni ŝanĝis al dinamika memor-atribuo laŭbezone.
  • La eligo de la operacio EXPLAIN estis pligrandigita por montri informojn pri la uzo de multintervalaj legoj kaj la uzo de duonkunigstrategio, en kiu JOIN-operacioj prilaboras vicojn de nur unu tablo.
  • Atoma ekzekuto de la operacioj "CREATE DATABASE" kaj "DROP DATABASE" estas provizita por protekti kontraŭ misfunkciadoj en kazo de kraŝo aŭ eraroj ĉe la dosiersistema nivelo dum la ekzekuto de ĉi tiuj operacioj. Ekzemple, antaŭe, kiam "CREATE DATABASE" kraŝis, nekompleta nefunkcianta datumbaza stokada strukturo povus esti kreita, kio postulis manan intervenon por purigi.
  • Konservitaj proceduroj skribitaj en JavaScript provizas subtenon por la VECTOR-tipo. Datumoj kun la specifita tipo nun povas esti pasitaj en enigo kaj reveno parametroj.
  • Aldonis la kapablon aŭtentikigi kiam li konektas al DBMS uzante la OpenID Connect-protokolon.
  • Dudek sep vundeblecoj estis riparitaj, el kiuj la plej severa (CVE-2024-5535) ricevis kritikan severecnivelon (9.1 el 10). La vundebleco povas esti ekspluatata malproksime sen aŭtentikigo. La problemo estas kaŭzita de eksterlima legado en la OpenSSL-biblioteko kaj kondukas al kraŝo aŭ memorliko en la respondo post konekto al servilo kun la indiko de malĝustaj protokolparametroj.

fonto: opennet.ru

Aldoni komenton