Stabilní vydání databázového systému MariaDB 10.6

Po roce vývoje a třech předběžných verzích byl vydán první stabilní release nové větve databázového systému MariaDB 10.6, v rámci které se vyvíjí odnož od MySQL, zachovávající zpětnou kompatibilitu a lišící se integrací dalších úložišť a rozšířenými možnostmi. Podpora nové větve bude probíhat po dobu 5 let, do července 2026.

Vývoj MariaDB řídí nezávislá organizace MariaDB Foundation v souladu s plně otevřeným a transparentním procesem vývoje, který není závislý na jednotlivých výrobcích. MariaDB je dodávána místo MySQL v mnoha distribucích Linuxu (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) a je implementována v takových velkých projektech, jako jsou Wikipedia, Google Cloud SQL a Nimbuzz.

Hlavní vylepšení MariaDB 10.6:

  • Byla zajištěna atomárnost provádění výrazů „CREATE TABLE|VIEW|SEQUENCE|TRIGGER“, „ALTER TABLE|SEQUENCE“, „RENAME TABLE|TABLES“, „DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE“ (buď je výraz zcela dokončen, nebo se vše vrátí do původního stavu). V případě operací „DROP TABLE“, které odstraňují několik tabulek najednou, je atomárnost zajištěna na úrovni každé jednotlivé tabulky. Cílem této změny je zajistit integritu v případě selhání serveru během provádění operace. Dříve po selhání mohly zůstat dočasné tabulky a soubory, došlo k narušení synchronizace tabulek v úložištích a frm-souborech a během přejmenování několika tabulek najednou mohly zůstat nepřejmenované jednotlivé tabulky. Integrita je zajištěna prostřednictvím vedení deníku obnovy stavu, jehož cestu lze určit pomocí nové volby „—log-ddl-recovery=níbor“ (výchozí hodnota ddl-recovery.log).
  • Byla implementována konstrukce definovaná ve standardu SQL 2008 „SELECT … OFFSET … FETCH“, která umožňuje vybrat určité množství řádků počínaje uvedeným posunem, s možností využití parametru „WITH TIES“ pro připojení dalšího následujícího prvku. Například výraz „SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FIRST 3 ROWS WITH TIES“ se od konstrukce „SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1“ liší tím, že vrátí ještě jeden prvek, který následuje na konci (namísto 3 bude vytištěno 4 řádky).
  • Pro engin InnoDB byl implementován syntax „SELECT … SKIP LOCKED“, který umožňuje vyloučit řádky, pro které nelze nastavit zámek („LOCK IN SHARE MODE“ nebo „FOR UPDATE“).
  • Byla zavedena možnost ignorovat indexy (v MySQL 8 se tato funkce nazývá „neviditelné indexy“). Označení indexu k ignorování se provádí pomocí příznaku IGNORED ve výrazu „ALTER TABLE“, po čemž zůstává index viditelný a aktualizovatelný, ale optimalizátor ho nepoužívá.
  • Byla přidána funkce JSON_TABLE(), určená k převodu dat JSON do relační formy. Například, JSON dokument lze převést pro použití v kontextu tabulky, kterou lze uvést uvnitř bloku FROM ve výrazu SELECT.
  • Byla vylepšena kompatibilita s databázovým systémem Oracle: Byla přidána podpora anonymních poddotazů uvnitř bloku FROM. Byla zavedena konstrukce MINUS (ekvivalent EXCEPT). Byly přidány funkce ADD_MONTHS(), TO_CHAR(), SYS_GUID() a ROWNUM().
  • V enginu InnoDB byla urychlena inserce do prázdných tabulek. Formát řetězců COMPRESSED byl ve výchozím nastavení přenesen do režimu pouze pro čtení. Schéma SYS_TABLESPACES nahradilo SYS_DATAFILES a přímo odráží stav v FS. Pro dočasný tabulkový prostor byla zajištěna podpora odloženého zápisu. Byla zastavena podpora starého algoritmu kontrolních součtů, který byl zachován pro kompatibilitu s MariaDB 5.5.
  • V systému replikace byla zvýšena maximální délka parametru master_host z 60 na 255 znaků a master_user na 128. Byla přidána proměnná binlog_expire_logs_seconds pro nastavení doby expirace binárního logu v sekundách (dříve byla doba resetu určena pouze v dnech pomocí proměnné expire_logs_days).
  • V mechanismu synchronní multi-master replikace Galera byla zavedena proměnná wsrep_mode pro nastavení parametrů API WSREP (Write Set REPlication). Bylo dovolené přepnout Galeru z nezašifrovaných komunikací na použití TLS bez zastavení clusteru.
  • Byl zrealizován schéma sys-schema, které shromažďuje kolekci pohledů, funkcí a procedur pro analýzu operací s databází.
  • Byly přidány pomocné tabulky pro analýzu výkonnosti replikace.
  • Do sady informačních tabulek byly přidány pohledy INFORMATION_SCHEMA.KEYWORDS a INFORMATION_SCHEMA.SQL_FUNCTIONS, které zobrazují seznam dostupných klíčových slov a funkcí.
  • Byly odstraněny sklady TokuDB a CassandraSE.
  • Kódování utf8 bylo převedeno z čtyřbajtového zastoupení utf8mb4 (U+0000..U+10FFFF) na tříbajtové utf8mb3 (pokryje rozsah Unicode U+0000..U+FFFF).
  • Byla přidána podpora aktivace pomocí socketů v systemd.
  • V pluginu GSSAPI byla přidána podpora pro názvy skupin Active Directory a SID.
  • Byla přidána kontrola existence konfiguračního souboru $MARIADB_HOME/my.cnf v doplnění k $MYSQL_HOME/my.cnf.
  • Byly implementovány nové systémové proměnné binlog_expire_logs_seconds, innodb_deadlock_report, innodb_read_only_compressed, wsrep_mode a Innodb_buffer_pool_pages_lru_freed.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster