MariaDB 10.6 stabil udgivelse

Efter et års udvikling og tre foreløbige udgivelser er den første stabile udgivelse af den nye gren af ​​MariaDB 10.6 DBMS blevet offentliggjort, inden for hvilken der udvikles en gren af ​​MySQL, der opretholder bagudkompatibilitet og udmærker sig ved integrationen af ​​yderligere lagermotorer og avancerede muligheder. Der ydes støtte til den nye filial i 5 år, indtil juli 2026.

MariaDB udvikling overvåges af den uafhængige MariaDB Foundation, efter en fuldstændig åben og gennemsigtig udviklingsproces, der er uafhængig af individuelle leverandører. MariaDB leveres som erstatning for MySQL i mange Linux-distributioner (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) og er blevet implementeret i så store projekter som Wikipedia, Google Cloud SQL og Nimbuzz.

Vigtigste forbedringer i MariaDB 10.6:

  • Den atomære udførelse af udtrykkene "CREATE TABLE|VIEW|SEQUENCE|TRIGGER", "ALTER TABLE|SEQUENCE", "RENAME TABLE|TABLES", "DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE" er sikret (enten er udtrykket fuldstændigt afsluttet, eller alt er returneret til sin oprindelige tilstand). I tilfælde af "DROP TABLE"-operationer, der sletter flere tabeller på én gang, sikres atomicitet på niveauet for hver enkelt tabel. Formålet med ændringen er at sikre integritet i tilfælde af servernedbrud under en operation. Tidligere, efter et nedbrud, kunne midlertidige tabeller og filer forblive, synkroniseringen af ​​tabeller i lagermotorer og frm-filer kunne blive forstyrret, og individuelle tabeller kunne forblive unavngivne, når flere tabeller blev omdøbt på én gang. Integriteten sikres ved at vedligeholde en tilstandsgendannelseslog, hvortil stien kan bestemmes gennem den nye indstilling "—log-ddl-recovery=file" (ddl-recovery.log som standard).
  • "SELECT ... OFFSET ... FETCH"-konstruktionen defineret i SQL 2008-standarden er blevet implementeret, hvilket giver dig mulighed for at vise et bestemt antal rækker, der starter fra en specificeret offset, med mulighed for at bruge parameteren "WITH TIES" til at vedhæfte en anden næste værdi. For eksempel adskiller udtrykket "SELECT i FRA t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FIRST 3 ROWS WITH TIES" konstruktionen "SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1" ved at udlæse et element mere i halen (i stedet for 3 udskrives 4 linjer).
  • For InnoDB-motoren er "SELECT ... SKIP LOCKED"-syntaksen implementeret, som giver dig mulighed for at ekskludere rækker, for hvilke der ikke kan indstilles en lås ("LOCK IN SHARE MODE" eller "FOR UPDATE").
  • Evnen til at ignorere indekser er blevet implementeret (i MySQL 8 kaldes denne funktionalitet "usynlige indekser"). Markering af et indeks, der skal ignoreres, sker ved hjælp af flaget IGNORED i ALTER TABLE-sætningen, hvorefter indekset forbliver synligt og opdateret, men bruges ikke af optimeringsværktøjet.
  • Tilføjet JSON_TABLE() funktion til at konvertere JSON-data til relationel form. For eksempel kan et JSON-dokument transformeres til brug i konteksten af ​​en tabel, som kan specificeres inde i en FROM-blok i en SELECT-sætning.
  • Forbedret kompatibilitet med Oracle DBMS: Tilføjet understøttelse af anonyme underforespørgsler inde i FROM-blokken. MINUS-konstruktionen er blevet implementeret (svarende til UNDTAGELSE). Tilføjede funktioner ADD_MONTHS(), TO_CHAR(), SYS_GUID() og ROWNUM().
  • I InnoDB-motoren er indsættelse i tomme tabeller blevet fremskyndet. Det KOMPRESSERTE strengformat er indstillet til skrivebeskyttet tilstand som standard. SYS_TABLESPACES-skemaet erstattede SYS_DATAFILES og afspejler direkte tilstanden i filsystemet. Doven skriveunderstøttelse er givet til den midlertidige bordplads. Understøttelse af den gamle checksum-algoritme, som blev bibeholdt for kompatibilitet med MariaDB 5.5, er blevet afbrudt.
  • I replikeringssystemet er størrelsen på master_host-parameterværdien blevet øget fra 60 til 255 tegn og master_user til 128. Variablen binlog_expire_logs_seconds er blevet tilføjet for at konfigurere udløbstiden for den binære log i sekunder (tidligere var nulstillingstiden kun bestemt i dage gennem variablen expire_logs_days).
  • Galera synkron multi-master replikeringsmekanisme implementerer variablen wsrep_mode til at konfigurere WSREP (Write Set REPlication) API-parametre. Tillod Galera at skifte fra ukrypteret kommunikation til TLS uden at stoppe klyngen.
  • Sys-schema skemaet er implementeret, som indeholder en samling af visninger, funktioner og procedurer til analyse af databaseoperationer.
  • Tilføjet servicetabeller til analyse af replikeringsydelse.
  • Visningerne INFORMATION_SCHEMA.KEYWORDS og INFORMATION_SCHEMA.SQL_FUNCTIONS er blevet tilføjet til sættet af informationstabeller, der viser en liste over tilgængelige nøgleord og funktioner.
  • TokuDB og CassandraSE repositories er blevet fjernet.
  • Utf8-kodningen er blevet overført fra fire-byte-repræsentationen utf8mb4 (U+0000..U+10FFFF) til tre-byte-utf8mb3 (dækker Unicode-området U+0000..U+FFFF).
  • Tilføjet understøttelse af socket-aktivering i systemd.
  • GSSAPI-plugin'et har tilføjet understøttelse af Active Directory-gruppenavne og SID'er.
  • Tilføjet kontrol for tilstedeværelse af konfigurationsfilen $MARIADB_HOME/my.cnf ud over $MYSQL_HOME/my.cnf.
  • Nye systemvariable binlog_expire_logs_seconds, innodb_deadlock_report, innodb_read_only_compressed, wsrep_mode og Innodb_buffer_pool_pages_lru_freed er blevet implementeret.

Kilde: opennet.ru

Tilføj en kommentar