Stabilna izdaja MariaDB 10.6

Po letu razvoja in treh predhodnih izdajah je bila objavljena prva stabilna izdaja nove veje DBMS MariaDB 10.6, v okviru katere se razvija veja MySQL, ki ohranja združljivost za nazaj in se odlikuje po integraciji dodatnih mehanizmov za shranjevanje podatkov. in napredne zmogljivosti. Podpora za novo podružnico bo zagotovljena 5 let, do julija 2026.

Razvoj MariaDB nadzira neodvisna fundacija MariaDB, ki sledi popolnoma odprtemu in preglednemu razvojnemu procesu, ki je neodvisen od posameznih prodajalcev. MariaDB je na voljo kot zamenjava za MySQL v številnih distribucijah Linuxa (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) in je bil implementiran v tako velike projekte, kot so Wikipedia, Google Cloud SQL in Nimbuzz.

Ključne izboljšave v MariaDB 10.6:

  • Zagotovljena je atomična izvedba izrazov “CREATE TABLE|VIEW|SEQUENCE|TRIGGER”, “ALTER TABLE|SEQUENCE”, “RENAME TABLE|TABLES”, “DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE” (bodisi je izraz popolnoma dokončano ali pa je vse vrnjeno v prvotno stanje). V primeru operacij “DROP TABLE”, ki brišejo več tabel hkrati, je atomičnost zagotovljena na ravni vsake posamezne tabele. Namen spremembe je zagotoviti celovitost v primeru zrušitve strežnika med operacijo. Prej so po zrušitvi lahko ostale začasne tabele in datoteke, motena je bila sinhronizacija tabel v pogonih za shranjevanje in datotek frm, posamezne tabele pa so lahko ostale nepreimenovane, ko je bilo preimenovanih več tabel hkrati. Celovitost je zagotovljena z vzdrževanjem dnevnika obnovitve stanja, pot do katerega je mogoče določiti z novo možnostjo »—log-ddl-recovery=file« (privzeto ddl-recovery.log).
  • Implementirana je konstrukcija »SELECT ... OFFSET ... FETCH«, definirana v standardu SQL 2008, ki vam omogoča prikaz določenega števila vrstic, začenši z določenim odmikom, z možnostjo uporabe parametra »WITH TIES« za pripni drugo naslednjo vrednost. Na primer, izraz »SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FIRST 3 ROWS WITH TIES« se razlikuje od konstrukcije »SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1« z izpisom še enega elementa v repu (namesto 3 bodo natisnjene 4 vrstice).
  • Za motor InnoDB je bila implementirana sintaksa »SELECT ... SKIP LOCKED«, ki vam omogoča, da izključite vrstice, za katere ni mogoče nastaviti zaklepanja (»LOCK IN SHARE MODE« ali »FOR UPDATE«).
  • Implementirana je možnost ignoriranja indeksov (v MySQL 8 se ta funkcionalnost imenuje »nevidni indeksi«). Označevanje indeksa za prezrtje se izvede z uporabo zastavice IGNORED v stavku ALTER TABLE, po kateri indeks ostane viden in posodobljen, vendar ga optimizator ne uporablja.
  • Dodana funkcija JSON_TABLE() za pretvorbo podatkov JSON v relacijsko obliko. Na primer, dokument JSON je mogoče preoblikovati za uporabo v kontekstu tabele, ki jo je mogoče podati znotraj bloka FROM v stavku SELECT.
  • Izboljšana združljivost z Oracle DBMS: dodana podpora za anonimne podpoizvedbe znotraj bloka FROM. Implementiran je bil konstrukt MINUS (enakovredno EXCEPT). Dodane funkcije ADD_MONTHS(), TO_CHAR(), SYS_GUID() in ROWNUM().
  • V motorju InnoDB je pospešeno vstavljanje v prazne tabele. Format niza COMPRESSED je privzeto nastavljen na način samo za branje. Shema SYS_TABLESPACES je zamenjala SYS_DATAFILES in neposredno odraža stanje v datotečnem sistemu. Podpora za leno pisanje je na voljo za začasni prostor tabel. Podpora za stari algoritem kontrolne vsote, ki je bil ohranjen zaradi združljivosti z MariaDB 5.5, je bila ukinjena.
  • V sistemu podvajanja je bila velikost vrednosti parametra master_host povečana s 60 na 255 znakov in master_user na 128. Dodana je bila spremenljivka binlog_expire_logs_seconds za konfiguracijo časa poteka binarnega dnevnika v sekundah (prej je bil čas ponastavitve določen samo v dnevih prek spremenljivke expire_logs_days).
  • Sinhroni večglavni replikacijski mehanizem Galera implementira spremenljivko wsrep_mode za konfiguracijo parametrov API WSREP (Write Set REPlication). Dovoljena pretvorba Galere iz nešifrirane komunikacije v TLS brez zaustavitve gruče.
  • Implementirana je bila shema sys-schema, ki vsebuje zbirko pogledov, funkcij in postopkov za analizo operacij baze podatkov.
  • Dodane storitvene tabele za analizo zmogljivosti replikacije.
  • Pogleda INFORMATION_SCHEMA.KEYWORDS in INFORMATION_SCHEMA.SQL_FUNCTIONS sta bila dodana naboru informacijskih tabel, ki prikazujejo seznam razpoložljivih ključnih besed in funkcij.
  • Repozitorija TokuDB in CassandraSE sta bila odstranjena.
  • Kodiranje utf8 je bilo preneseno iz štiribajtne predstavitve utf8mb4 (U+0000..U+10FFFF) v tribajtno utf8mb3 (pokriva obseg Unicode U+0000..U+FFFF).
  • Dodana podpora za aktivacijo vtičnice v systemd.
  • Vtičnik GSSAPI ima dodano podporo za imena skupin Active Directory in SID-je.
  • Dodano preverjanje prisotnosti konfiguracijske datoteke $MARIADB_HOME/my.cnf poleg $MYSQL_HOME/my.cnf.
  • Implementirane so bile nove sistemske spremenljivke binlog_expire_logs_seconds, innodb_deadlock_report, innodb_read_only_compressed, wsrep_mode in Innodb_buffer_pool_pages_lru_freed.

Vir: opennet.ru

Dodaj komentar