Stabilní vydání MariaDB 10.6

Po roce vývoje a třech předběžných vydáních byla zveřejněna první stabilní verze nové větve MariaDB 10.6 DBMS, v rámci které se vyvíjí větev MySQL, která si zachovává zpětnou kompatibilitu a vyznačuje se integrací dalších úložných enginů. a pokročilé schopnosti. Podpora pro novou pobočku bude poskytována po dobu 5 let, do července 2026.

Na vývoj MariaDB dohlíží nezávislá MariaDB Foundation, která se řídí zcela otevřeným a transparentním procesem vývoje, který je nezávislý na jednotlivých prodejcích. MariaDB je dodávána jako náhrada za MySQL v mnoha distribucích Linuxu (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) a byla implementována v tak velkých projektech, jako je Wikipedia, Google Cloud SQL a Nimbuzz.

Klíčová vylepšení v MariaDB 10.6:

  • Je zajištěno atomické provádění výrazů „CREATE TABLE|VIEW|SEQUENCE|TRIGGER“, „ALTER TABLE|SEQUENCE“, „RENAME TABLE|TABLES“, „DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE“ (buď výraz je zcela dokončeno nebo vše vráceno do původního stavu). V případě operací „DROP TABLE“, které mažou několik tabulek najednou, je atomicita zajištěna na úrovni každé jednotlivé tabulky. Účelem změny je zajistit integritu v případě pádu serveru během operace. Dříve mohly po zhroucení zůstat dočasné tabulky a soubory, mohla být narušena synchronizace tabulek ve strojích úložiště a souborů frm a jednotlivé tabulky mohly zůstat nepřejmenované, když bylo přejmenováno několik tabulek najednou. Integrita je zajištěna udržováním protokolu obnovení stavu, jehož cestu lze určit pomocí nové volby „—log-ddl-recovery=file“ (ve výchozím nastavení ddl-recovery.log).
  • Byla implementována konstrukce „SELECT ... OFFSET ... FETCH“ definovaná ve standardu SQL 2008, která umožňuje zobrazit určitý počet řádků počínaje zadaným posunem s možností použití parametru „WITH TIES“ k připojit další další hodnotu. Například výraz „SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH PRVNÍ 3 ŘÁDKY S VAZBAMI“ se liší od konstrukce „SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1“ tím, že na konci je uveden ještě jeden prvek. (místo 3 budou vytištěny 4 řádky).
  • Pro engine InnoDB byla implementována syntaxe „SELECT... SKIP LOCKED“, která umožňuje vyloučit řádky, pro které nelze nastavit zámek („LOCK IN SHARE MODE“ nebo „FOR UPDATE“).
  • Byla implementována schopnost 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 v příkazu ALTER TABLE, po kterém zůstává index viditelný a aktualizovaný, ale není používán optimalizátorem.
  • Přidána funkce JSON_TABLE() pro převod dat JSON do relační formy. Například dokument JSON lze transformovat pro použití v kontextu tabulky, kterou lze zadat uvnitř bloku FROM v příkazu SELECT.
  • Vylepšená kompatibilita s Oracle DBMS: Přidána podpora pro anonymní poddotazy uvnitř bloku FROM. Byl implementován konstrukt MINUS (ekvivalentní s EXCEPT). Přidány funkce ADD_MONTHS(), TO_CHAR(), SYS_GUID() a ROWNUM().
  • V enginu InnoDB bylo zrychleno vkládání do prázdných tabulek. Formát řetězce COMPRESSED je standardně nastaven na režim pouze pro čtení. Schéma SYS_TABLESPACES nahradilo SYS_DATAFILES a přímo odráží stav v systému souborů. Pro dočasný tabulkový prostor je poskytována podpora opožděného zápisu. Podpora starého algoritmu kontrolního součtu, který byl zachován kvůli kompatibilitě s MariaDB 5.5, byla ukončena.
  • V replikačním systému byla velikost hodnoty parametru master_host zvýšena z 60 na 255 znaků a master_user na 128. Byla přidána proměnná binlog_expire_logs_seconds pro konfiguraci doby vypršení binárního protokolu v sekundách (dříve byl čas resetování určeno pouze ve dnech prostřednictvím proměnné expire_logs_days).
  • Mechanismus synchronní multi-master replikace Galera implementuje proměnnou wsrep_mode pro konfiguraci parametrů API WSREP (Write Set REPlication). Povolená konverze Galery z nešifrované komunikace na TLS bez zastavení clusteru.
  • Bylo implementováno schéma sys-schema, které obsahuje kolekci pohledů, funkcí a procedur pro analýzu databázových operací.
  • Přidány tabulky služeb pro analýzu výkonu 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í.
  • Repozitáře TokuDB a CassandraSE byly odstraněny.
  • Kódování utf8 bylo přesunuto ze čtyřbajtové reprezentace utf8mb4 (U+0000..U+10FFFF) na tříbajtové utf8mb3 (pokrývá rozsah Unicode U+0000..U+FFFF).
  • Přidána podpora pro aktivaci socketu v systemd.
  • Plugin GSSAPI přidal podporu pro názvy skupin a SID služby Active Directory.
  • Přidána kontrola přítomnosti konfiguračního souboru $MARIADB_HOME/my.cnf kromě $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

Přidat komentář