MariaDB 10.5 stabil utgivelse

Etter et år med utvikling og fire forhåndsutgivelser forberedt første stabile utgivelse av en ny DBMS-gren MariaDB 10.4, der en gren av MySQL utvikles som opprettholder bakoverkompatibilitet og annerledes integrering av ekstra lagringsmotorer og avanserte funksjoner. Støtte til den nye filialen vil bli gitt i 5 år, frem til juni 2025.

MariaDB-utviklingen overvåkes av den uavhengige MariaDB Foundation, etter en helt åpen og gjennomsiktig utviklingsprosess som er uavhengig av individuelle leverandører. MariaDB leveres i stedet for MySQL i mange Linux-distribusjoner (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) og har blitt implementert i så store prosjekter som Wikipedia, Google Cloud SQL и Nimbuzz.

Nøkkel forbedringer MariaDB 10.5:

  • Lagt til lagringsmotor S3, som lar deg være vert for MariaDB-tabeller på Amazon S3 eller annen offentlig eller privat skylagring som støtter S3 API. Plassering av både vanlige og partisjonerte tabeller i S3 støttes. Når partisjonerte tabeller plasseres i skyen, kan de brukes direkte, inkludert fra en annen server som har tilgang til S3-lagring.
  • Lagt til lagringsmotor ColumnStore, som lagrer data bundet til kolonner og bruk massivt parallelt distribuert arkitektur. Motoren er basert på utviklingen av MySQL-lagring InfiniDB og er beregnet på å organisere behandlingen og utførelsen av analytiske spørringer over store datamengder (Data Warehouse).
    ColumnStore lagrer data ikke rad for rad, men etter kolonner, som lar deg optimalisere ytelsen til gruppering etter kolonner fra en stor database, inkludert petabyte med data. Lineær skalering, komprimert datalagring, vertikal og horisontal partisjonering og effektiv utførelse av konkurrerende forespørsler støttes.

  • Alle kjørbare filer som starter med ordet "mysql" har fått nytt navn til å bruke ordet "mariadb". De gamle navnene er lagret i form av symbolske lenker.
  • Lagt til ny datatype INET6 for lagring av IPv6-adresser.
  • Det er jobbet med å dele privilegier i mindre komponenter. I stedet for det generelle SUPER-privilegiet, foreslås en serie selektive privilegier "BINLOG ADMIN",
    "BINLOG REPLAY"
    «CONNECTION ADMIN»
    "FODERERT ADMIN"
    "READ_ONLY ADMIN",
    "REPLICATION MASTER ADMIN"
    "REPLICATION SLAVE ADMIN" og
    "SETT BRUKER".

  • "REPLICATION CLIENT"-privilegiet har blitt omdøpt til "BINLOG MONITOR" og "SHOW MASTER STATUS"-uttrykket til "VIS BINLOG STATUS". Omdøpingen tydeliggjør oppførselen og er ikke assosiert med politisk korrekthet, prosjektet forlater ikke begrepene mester/slave og har til og med lagt til nye privilegier "MASTER ADMIN" og "SLAVE ADMIN". Samtidig er en ny nøkkel «REPLICA» lagt til SQL-uttrykket, som er et synonym for «SLAVE».
  • For noen uttrykk har rettighetene som kreves for å utføre dem blitt endret. "VIS BINLOG EVENTS" krever nå "BINLOG MONITOR"-privilegier i stedet for "REPLICATION SLAVE", "SHOW SLAVE HOSTS" krever "REPLICATION MASTER ADMIN"-privilegier i stedet for "REPLICATION SLAVE", "VIS SLAVE STATUS" krever "REPLICATION SLAVE ADMIN" eller " SUPER" i stedet for "REPLICATION CLIENT", "VIS REPLICATION SLAVE" krever "REPLICATION SLAVE ADMIN"-rettigheter i stedet for "REPLICATION SLAVE".
  • Lagt til design "SETT INN...RETURNERER"Og"ERSTATT...RETURNERER", returnerer en liste over innsatte/erstattede oppføringer i skjemaet som om verdiene ble returnert ved hjelp av et SELECT-uttrykk (ligner på "DELETE ... RETURNING").

    SETTE INN I t2 VERDIER (1,'Hund'),(2,'Lion'),(3,'Tiger'),(4,'Leopard')
    RETURNING id2,id2+id2,id2&id2,id2||id2;
    +——+———+———+———-+
    | id2 | id2+id2 | id2&id2 | id2||id2 |
    +——+———+———+———-+
    | 1 | 2 | 1 | 1 |
    | 2 | 4 | 2 | 1 |
    | 3 | 6 | 3 | 1 |
    | 4 | 8 | 4 | 1 |
    +——+———+———+———-+

  • Lagt til uttrykk "UNNTATT ALLE"Og"STYR ALLE» for å ekskludere/supplere resultatet med et spesifikt sett med verdier.
  • Det er nå mulig å spesifisere kommentarer i blokkene "CREATE DATABASE" og "ALTER DATABASE".
  • Lagt til konstruksjoner for å gi nytt navn til indekser og kolonner "ENDRE TABELL ... GJENNOMFØR INDEKS / NØKKEL"Og"ENDRE TABELL ... GJENNOMFØR KOLONNE".
  • I operasjonene "ALTER TABLE" og "RENAME TABLE" er støtte for "IF EXISTS"-betingelsen lagt til for å utføre operasjonen bare hvis tabellen eksisterer;
  • For indekser i "CREATE TABLE" attributtet "SYNLIG".
  • Lagt til "CYCLE" uttrykk for å identifisere rekursive løkker CTE.
  • Funksjoner lagt til JSON_ARRAYAGG и JSON_OBJECTAGG for å returnere en matrise eller JSON-objekt med verdiene til den angitte kolonnen.
  • Lagt til tjenesteinformasjonstabeller (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS og THREAD_POOL_WAITS) for trådpoolen (thread_pool).
  • ANALYSE-uttrykket utvides for å vise tiden brukt på å sjekke WHERE-blokken og utføre hjelpeoperasjoner.
  • Områdebehandlingsoptimalisatoren tar hensyn til "IS NOT NULL"-egenskapene
  • Størrelsen på midlertidige filer som brukes ved sortering med VARCHAR, CHAR og BLOB-typer er betydelig redusert.
  • В binær logg, brukt til å organisere replikering, har nye metadatafelt blitt lagt til, inkludert primærnøkkel, kolonnenavn, tegnsett og geometritype. Verktøyet mariadb-binlog og kommandoene "VIS BINLOG HENDELSER" og "VIS RELJELOG HENDELSER" gir visning av replikeringsflagg.
  • utforming DROPPE BORD nå er det trygt fjerner tabeller som forblir i lagringsmotoren selv om det ikke er noen ".frm"- eller ".par"-filer.
  • Implementerte en maskinvareakselerert versjon av crc32()-funksjonen for AMD64, ARMv8 og POWER 8 CPUer.
  • Endret noen standardinnstillinger. innodb_encryption_threads er økt til 255 og max_sort_length er økt fra 4 til 8.
  • Tallrike ytelsesoptimaliseringer for InnoDB-motoren presenteres.
  • Full støtte er lagt til Galera synkron multi-master replikeringsmekanisme GTID (Global Transaction ID), transaksjonsidentifikatorer felles for alle klyngenoder.
  • Overgang til ny filial av biblioteket er gjort PCRE2 (Perl-kompatible regulære uttrykk), i stedet for den klassiske PCRE 8.x-serien.
  • Nye versjoner av seler er foreslått for tilkobling til MariaDB og MySQL DBMS fra programmer i Python og C: MariaDB Connector/Python 1.0.0 и MariaDB Connector/C 3.1.9. Python-bindingen samsvarer med Python DB API 2.0, er skrevet i C og bruker Connector/C-biblioteket for å koble til serveren.

Kilde: opennet.ru

Legg til en kommentar