Yra MySQL 9.0.0 DBVS

„Oracle“ sukūrė naują MySQL 9.0.0 DBVS atšaką. MySQL Community Server 9.0.0 versijos yra paruoštos visiems pagrindiniams Linux, FreeBSD, macOS ir Windows platinimams. Kaip dalis praėjusiais metais pristatyto išleidimo modelio, „MySQL 9.0“ yra klasifikuojama kaip „inovacijų“ šaka, kuri taip pat apims kitas reikšmingas „MySQL 9.1“ ir „9.2“ versijas. Inovacijų šakos rekomenduojamos tiems, kurie nori anksti naudotis naujomis funkcijomis, skelbiami kas 3 mėnesius ir palaikomi tik iki kito reikšmingo leidinio paskelbimo (pavyzdžiui, išleidus 9.1 atšaką, 9.0 šakos palaikymas bus teikiamas nutrauktas). Maždaug po metų jie planuoja sukurti LTS laidą, kuri bus rekomenduojama diegimams, reikalaujantiems nuspėjamumo ir ilgalaikio nepakitusio elgesio išsaugojimo. Po LTS filialo bus suformuota nauja Inovacijų šaka - MySQL 10.0.

Pagrindiniai „MySQL 9.0“ pakeitimai:

  • Vykdant konstrukciją „EXPLAIN ANALYZE INTO“, buvo pridėta galimybė įrašyti išvestį JSON formatu į vartotojo kintamąjį, kuris vėliau gali būti naudojamas kaip argumentas funkcijose, skirtose darbui su JSON.

    EXPLAIN ANALYZE FORMAT=JSON INTO @kintamasis select_stmt

  • Išraiškas „CREATE EVENT“, „ALTER EVENT“ ir „DROP EVENT“ galima kurti kaip parametrizuotas užklausas saugomų procedūrų viduje. Parametrizuota užklausa sukuriama naudojant išraišką PREPARE ir vykdoma naudojant išraišką EXECUTE.

    KURTI PROCEDŪRĄ sp(n INT)
    BEGIN
    SET @s1 = "KURTI ĮVYKĮ e KIEKVIENĄ TVARKĄ";
    SET @s2 = "ANTRA
    STARTS CURRENT_TIMESTAMP + INTERVALAS 10 SECOND
    BAIGIASI CURRENT_TIMESTAMP + INTERVALAS 2 MINUTĖ
    UŽBAIGUS KONSERVUOTI
    DO
    INSERT INTO dt VALUES ROW(NULL, NOW(), GRINDYS(RAND()*100))";

    NUSTATYTI @s = CONCAT(@s1, n, @s2);
    Ruoškite ps IŠ @s;
    VYKDYTI ps;
    ATSKIRTI PREPARATE ps;
    PABAIGA

  • Pridėtos dvi naujos sistemos lentelės su informacija apie sistemos kintamuosius: kintamieji_metaduomenys – yra informacija apie visų MySQL serverio palaikomų sistemos kintamųjų pavadinimus, apimtį, tipus ir reikšmių diapazonus; global_variable_attributes – yra atributų reikšmės, nustatytos visuotiniams kintamiesiems, pvz., offline_mode ir read_only.
  • Anksčiau nebenaudojamas mysql_native_password serverio papildinys, suteikiantis slaptažodžio autentifikavimą, buvo pašalintas. Vietoj mysql_native_password rekomenduojama pereiti prie caching_sha2_password įskiepio, kuris maišai vietoj SHA2 naudoja SHA1 algoritmą.
  • Pridėta 15 kintamųjų, skirtų MLE (Multilingual Engine Component) varikliui konfigūruoti ir tikrinti, kuris leidžia saugomose procedūrose ir funkcijose naudoti kodą kitomis kalbomis nei SQL.

Šaltinis: opennet.ru