Tvrtka Oracle je formirala novu granu SDB MySQL 9.0.0. Izdanja MySQL Community Server 9.0.0 su pripremljena za sve glavne distribucije Linuxa, FreeBSD-a, macOS-a i Windows-a. U okviru modela izdavanja koji je uveden prošle godine, MySQL 9.0 je svrstan u grane "Inovacija", kojima će biti pridružena i sljedeća značajna izdanja MySQL 9.1 i 9.2. Grane inovacija preporučuju se onima koji žele raniji pristup novim funkcionalnostima, objavljuju se svaka 3 mjeseca i podržavaju se samo do objave sljedećeg značajnog izdanja (na primjer, nakon izdanja grane 9.1 prestaje podrška grani 9.0). Oko godinu dana planiraju oblikovati LTS-izdanje, koje će biti preporučeno za implementacije kojima je potrebna predvidivost i dugotrajno očuvanje nepromjenljivog ponašanja. Nakon LTS-grane bit će formirana nova grana inovacija — MySQL 10.0.
Glavne promjene u MySQL 9.0:
- Pri izvođenju konstrukcije "EXPLAIN ANALYZE INTO" dodana je mogućnost spremanja izlaza u JSON formatu u korisničku varijablu koja se potom može koristiti kao argument u funkcijama za rad s JSON-om.
EXPLAIN ANALYZE FORMAT=JSON INTO @varijabla select_stmt
- Dopušteno je oblikovanje izraza "CREATE EVENT", "ALTER EVENT" i "DROP EVENT" u obliku parametriziranih upita unutar pohranjenih procedura. Stvaranje parametriziranog upita ostvaruje se korištenjem izraza PREPARE, a izvršenje — izraza EXECUTE.
CREATE PROCEDURE sp(n INT)
POČNI
SET @s1 = "CREATE EVENT e ON SCHEDULE EVERY ";
SET @s2 = " SECOND"
STARTS CURRENT_TIMESTAMP + INTERVAL 10 SECOND
ENDS CURRENT_TIMESTAMP + INTERVAL 2 MINUTE
ON COMPLETION PRESERVE
IZVRŠI
INSERT INTO d.t VALUES ROW(NULL, NOW(), FLOOR(RAND()*100))";SET @s = CONCAT(@s1, n, @s2);
PREPARE ps FROM @s;
EXECUTE ps;
DEALLOCATE PREPARE ps;
KRAJ - Dodane su dvije nove sustavne tablice koje sadrže informacije o sustavnim varijablama: variables_metadata — sadrži informacije o imenima, opsegu, tipovima i rasponima vrijednosti svih podržanih MySQL-serverom sustavnih varijabli; global_variable_attributes — sadrži vrijednosti atributa postavljenih za globalne varijable, kao što su offline_mode i read_only.
- Ranije navedeni zastarjeli poslužiteljski plugin mysql_native_password, koji omogućava autentifikaciju pomoću lozinki, uklonjen je. Umjesto mysql_native_password preporučuje se korištenje plugina caching_sha2_password, koji koristi SHA2 algoritam za hashing umjesto SHA1.
- Dodano je 15 varijabli za konfiguraciju i inspekciju MLE (Multilingual Engine Component) sustava, što omogućuje korištenje koda na jezicima različitim od SQL-a u pohranjenim procedurama i funkcijama.
Izvor: opennet.ru
