Kompania Oracle ka formuar njĂ« degĂ« tĂ« re tĂ« DBMS MySQL 9.3.0. NdĂ«rtimet e MySQL Community Server 9.3.0 janĂ« pĂ«rgatitur pĂ«r tĂ« gjitha shpĂ«rndarjet kryesore tĂ« Linux, FreeBSD, macOS dhe Windows. Sipas modelit tĂ« ri tĂ« publikimit tĂ« versioneve tĂ« venĂ« nĂ« zbatim nĂ« vitin 2023, MySQL 9.3 Ă«shtĂ« klasifikuar nĂ« degĂ«t âInnovationâ. DegĂ«t Innovation rekomandohen pĂ«r ata qĂ« duan tĂ« kenĂ« qasje mĂ« herĂ«t nĂ« funksionalitete tĂ« reja, publikohen çdo 3 muaj dhe mbĂ«shteten vetĂ«m deri nĂ« publikimin e versionit tjetĂ«r tĂ« rĂ«ndĂ«sishĂ«m (pĂ«r shembull, pas shfaqjes sĂ« degĂ«s 9.3 ndalimi i mbĂ«shtetjes pĂ«r degĂ«n 9.2). NĂ« verĂ« planifikojnĂ« tĂ« formojnĂ« versionin LTS 9.4, tĂ« rekomanduar pĂ«r implementimet qĂ« kĂ«rkojnĂ« parashikueshmĂ«ri dhe ruajtje tĂ« sjelljes tĂ« pandryshuar pĂ«r njĂ« periudhĂ« tĂ« gjatĂ«. Pas degĂ«s LTS do tĂ« formohet njĂ« degĂ« e re Innovation â MySQL 10.0.
Ndryshimet kryesore në MySQL 9.3:
- NĂ« utilitarin mysqldump Ă«shtĂ« shtuar opsioni ââusersâ pĂ«r tĂ« krijuar kopje logjike me informacionin mbi tĂ« gjitha llogaritĂ«, qĂ« del pĂ«rmes shprehjeve SQL âCREATE USERâ dhe âGRANTâ. PĂ«r tĂ« futur shprehjen âDROP USERâ para âCREATE USERâ parashikohet opsioni ââadd-drop-userâ, ndĂ«rsa pĂ«r pasqyrimin selektiv nĂ« dump tĂ« pĂ«rdoruesve tĂ« veçantĂ« â opsionet ââinclude-user=user@hostâ dhe ââexclude-user=user@hostâ, tĂ« cilat mund tĂ« jepen disa herĂ«.
- NĂ« motorin MLE (Multilingual Engine Component), qĂ« lejon pĂ«rdorimin e kodit nĂ« gjuhĂ« tĂ« ndryshme nga SQL nĂ« procedurat dhe funksionet e ruajtura, Ă«shtĂ« pĂ«rmirĂ«suar mbĂ«shtetje pĂ«r JavaScript. PĂ«r procedurat e ruajtura nĂ« gjuhĂ«n JavaScript Ă«shtĂ« realizuar tipi âDECIMALâ, i cili mund tĂ« pĂ«rdoret pĂ«r argumentet hyrĂ«se dhe kthysat. NĂ« mĂ«nyrĂ« tĂ« paracaktuar pĂ«r siguri, tipi MySQL DECIMAL kthehet nĂ« tipin JavaScript âStringâ, por kjo sjellje mund tĂ« tejkalohet me komandĂ«n âSELECT mle_set_session_state(â{âdecimal_typeâ:âNumberâ}â)â, pas sĂ« cilĂ«s do tĂ« pĂ«rdoret tipi JavaScript âNumberâ. MbĂ«shtetet konvertimi nĂ« tipin DECIMAL tĂ« vlerave me tipat JavaScript Boolean, Number, String dhe BigInt.
- NĂ« procedurat e ruajtura nĂ« JavaScript Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r pĂ«rcaktimin e parametrave tĂ« lokalizimit, duke pĂ«rdorur API-nĂ« JavaScript Intl. PĂ«r shembull, pĂ«r tĂ« pĂ«rcaktuar gjuhĂ«n aktuale mund tĂ« pĂ«rdorim pronat âIntl.DateTimeFormat().resolvedOptions().localeâ, dhe pĂ«r tĂ« tejkaluar gjuhĂ«n â metodĂ«n âtoLocaleString()â.
- AftĂ«sitĂ« pĂ«r menaxhimin e bibliotekave JavaScript janĂ« zgjeruar: tani mund tĂ« pĂ«rdoren shprehjet 'ALTER PROCEDURE' dhe 'ALTER FUNCTION' pĂ«r tĂ« modifikuar listĂ«n e bibliotekave tĂ« importuara. ĂshtĂ« shtuar mundĂ«sia e pĂ«rdorimit tĂ« shprehjes 'ALTER LIBRARY' pĂ«r tĂ« shtuar, fshirĂ« ose ndryshuar komentin SQL nĂ« bibliotekĂ«. PĂ«r tĂ« marrĂ« tĂ« dhĂ«na nĂ« lidhje me bibliotekĂ«n, Ă«shtĂ« realizuar shprehja 'SHOW LIBRARY STATUS'.
- Shtuar mbĂ«shtetje pĂ«r ngarkimin dinamik tĂ« bibliotekave JavaScript. PĂ«r importin dinamik tĂ« bibliotekĂ«s, duhet tĂ« pĂ«rdoret fjala kyçe 'await', pĂ«r shembull 'let module = await import(â/db1/lib_${object_type}â)'.
- Optimizimet për pyetjet që përdorin operatorë krahasues të saktësuar janë zgjeruar. Përveç mbështetjes për operatorët '=ANY' dhe 'ALL', në versionin e ri është shtuar mbështetje për operatorët '>ANY', '>=ANY', '<ANY', 'ALL', '>=ALL', '<ALL' dhe '<=ALL'.
- Plugin-i 'version_tokens' është hequr, i cili më parë ishte shpallur i përjetshëm.
- Të vendosësh vlerën 0 në variablën sistemore replica_parallel_workers është ndaluar.
- Janë eliminuar 28 vulnerabilitete, nga të cilat 26 mund të shfrytëzohen në distancë nëse ka akses për të dërguar kërkesa në DBMS. Gjashtë problemet më serioze kanë një nivel rreziku 6.5 dhe lidhen me vulnerabilitetet në motorin InnoDB, parserin dhe optimizuesin. Vulnerabilitetet më pak të rrezikshme prekin mysqldump, InnoDB, optimizuesin, DDL, UDF, parserin dhe sistemin e replikimit.
Burimi: opennet.ru
