Po roce vývoje a šesti předběžných verzích první stabilní verze nové větve databázového systému , v rámci které se vyvíjí odvozenina od MySQL, zachovávající zpětnou kompatibilitu a integrací dalších úložišť a rozšířených funkcionalit. Podpora nové verze bude zajišťována po dobu 5 let, do června 2024.
Rozvoj MariaDB řídí nezávislá organizace MariaDB Foundation v souladu s plně otevřeným a transparentním procesem vývoje, nezávislým na jednotlivých dodavatelí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 , a .
Klíčové :
- Systém zahrnuje technologii synchronní multi-master replikace , která umožňuje použití topologie active-active multi-master, povolující čtení i zápis na jakémkoli uzlu. Při synchronní replikaci všechny uzly vždy obsahují aktuální data, tj. je zaručena absence ztracených transakcí, protože transakce se potvrzuje až po rozšíření dat na všechny uzly. Replikace se provádí paralelně, na úrovni řádků, s přenosem pouze informací o změnách;
- V Unixových systémech je ve výchozím nastavení aktivován autentizační plugin , který umožňuje využití existujících systémových účtů k připojení k databázovému systému přes lokální unixový socket;
- Byla přidána nastavení doby platnosti uživatelského hesla, po uplynutí které je heslo označeno jako prošlé. Pro stanovení doby platnosti hesla byly do příkazů "CREATE USER" a "ALTER USER" přidány výrazy "PASSWORD EXPIRE INTERVAL N DAY";
- Byla přidána podpora uzivatelů DB přes výraz "ACCOUNT LOCK" v příkazech "CREATE USER" a "ALTER USER";
- Významně byla zrychlena kontrola oprávnění v konfiguracích s velkým počtem uživatelů nebo pravidel přístupu;
- použití tabulek mysql.user a mysql.host. Pro ukládání účtů a globálních oprávnění se nyní používá tabulka mysql.global_priv;
- V autentizace podpora výrazu "SET PASSWORD";
- možnost použití více než jednoho autentizačního pluginu pro každý účet, což může být užitečné pro postupný přechod uživatelů na plugin . Při vytváření uživatele root@localhost skriptem mysql_install_db jsou nyní ve výchozím nastavení aktivovány dva autentizační pluginy — unix_socket a mysql_native_password;
- V úložišti InnoDB byla realizována operace okamžitého odstranění sloupců (ALTER TABLE … DROP COLUMN … ALGORITHM=INSTANT) a změny pořadí sloupců. Zmenšila se velikost počátečního logu zpětných operací (redo log). Byla přidána podpora rotace klíčů pro innodb_encrypt_log. Implementován algoritmus kontroly kontrolních součtů.
innodb_checksum_algorithm=full_crc32. Zajištěno okamžité rozšíření typu VARCHAR a změna kódování textu pro neindexované sloupce; - Byl vylepšen optimalizátor. Přidána možnost sledování optimalizátoru, kterou lze aktivovat prostřednictvím systémové proměnné . Ve výchozím nastavení probíhá sledování statistik nezávisle na úložištích.
Objevily se dva nové režimy use_stat_tables — COMPLEMENTARY_FOR_QUERIES a PREFERABLY_FOR_QUERIES. Aktivován režim optimize_join_buffer_size. Byly přidány nové rowid_filter a condition_pushdown_from_having; - Podpora systémových verzionovaných tabulek, které nejen uchovávají aktuální výřez dat, ale také zachovávají informace o všech předchozích změnách, byla rozšířena s časovými intervaly;
- Byl přidán nový příkaz „FLUSH SSL“ pro znovu načtení SSL certifikátů bez restartu serveru;
- V operacích „INSTALL PLUGIN“, „UNINSTALL PLUGIN“ a „UNINSTALL SONAME“ byla přidána podpora výrazů „IF NOT EXISTS“ a „IF EXISTS“;
- Byly navrženy odolné proti pádu systémové tabulky, pro jejichž ukládání se používá úložiště ;
- Byl realizován přechod na standard C++11 (byly použity atomické operace);
- Byl výrazně zvýšen výkon vlastností lokality „Collation“ pro Unicode, což umožňuje stanovit pravidla třídění a metody porovnávání, které zohledňují význam symbolů;
- plugin pro určení vlastních typů polí;
- Byla přidána podpora okenních (User-Defined Functions);
- V operaci „FLUSH TABLES“ režim „BACKUP LOCK“, který lze použít při zálohování souborů databáze;
- podpora serverových příkazů začínajících názvem mariadb, alternativních k příkazům začínajícím na „mysql“ (například mariadump místo mysqldump).
Zdroj: opennet.ru
