MariaDB 10.5 stabiele release

Na een jaar van ontwikkeling en vier pre-releases bereid eerste stabiele release van een nieuwe DBMS-tak MariaDB 10.4, waarbinnen een tak van MySQL wordt ontwikkeld die achterwaartse compatibiliteit handhaaft en verschillend integratie van extra opslagmotoren en geavanceerde mogelijkheden. Ondersteuning voor de nieuwe vestiging wordt verleend voor een periode van 5 jaar, tot juni 2025.

De ontwikkeling van MariaDB staat onder toezicht van de onafhankelijke MariaDB Foundation, volgens een volledig open en transparant ontwikkelingsproces dat onafhankelijk is van individuele leveranciers. MariaDB wordt in veel Linux-distributies geleverd in plaats van MySQL (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) en is geïmplementeerd in grote projecten als Wikipedia, Google Cloud-SQL и Nimbuzz.

Toets verbeteringen MariaDB 10.5:

  • Opslagengine toegevoegd S3, waarmee u MariaDB-tabellen kunt hosten op Amazon S3 of een andere openbare of particuliere cloudopslag die de S3 API ondersteunt. Het plaatsen van zowel gewone als gepartitioneerde tabellen in S3 wordt ondersteund. Wanneer gepartitioneerde tabellen in de cloud worden geplaatst, kunnen deze direct worden gebruikt, ook vanaf een andere server die toegang heeft tot S3-opslag.
  • Opslagengine toegevoegd KolomWinkel, waarin gegevens worden opgeslagen die zijn gebonden aan kolommen en gebruik massaal parallel gedistribueerde architectuur. De engine is gebaseerd op de ontwikkelingen op het gebied van MySQL-opslag InfiniDB en is bedoeld voor het organiseren van de verwerking en uitvoering van analytische queries over grote hoeveelheden gegevens (Data Warehouse).
    ColumnStore slaat gegevens niet rij voor rij op, maar per kolom, waardoor u de prestaties van het groeperen op kolommen uit een grote database, inclusief petabytes aan gegevens, kunt optimaliseren. Lineaire schaling, gecomprimeerde gegevensopslag, verticale en horizontale partities en efficiënte uitvoering van concurrerende verzoeken worden ondersteund.

  • Alle uitvoerbare bestanden die beginnen met het woord "mysql" zijn hernoemd naar het woord "mariadb". De oude namen worden opgeslagen in de vorm van symbolische links.
  • Nieuw gegevenstype toegevoegd INET6 voor het opslaan van IPv6-adressen.
  • Er is gewerkt aan het opsplitsen van privileges in kleinere componenten. In plaats van het algemene SUPER-privilege wordt een reeks selectieve privileges “BINLOG ADMIN” voorgesteld,
    "BINLOG-HERHAAL"
    "VERBINDING BEHEERDER"
    "FEDERATIEVE BEHEERDER"
    "READ_ONLY BEHEERDER",
    "REPLICATIE HOOFDBEHEERDER"
    "REPLICATIE SLAVE ADMIN" en
    "GEBRUIKER INSTELLEN".

  • Het privilege "REPLICATION CLIENT" is hernoemd naar "BINLOG MONITOR" en de expressie "SHOW MASTER STATUS" naar "SHOW BINLOG STATUS". De hernoeming verduidelijkt het gedrag en wordt niet geassocieerd met politieke correctheid. Het project laat de termen master/slave niet varen en heeft zelfs nieuwe privileges “MASTER ADMIN” en “SLAVE ADMIN” toegevoegd. Tegelijkertijd is een nieuwe sleutel “REPLICA” toegevoegd aan de SQL-expressie, wat een synoniem is voor “SLAVE”.
  • Voor sommige expressies zijn de bevoegdheden die nodig zijn om ze uit te voeren gewijzigd. "SHOW BINLOG EVENTS" vereist nu "BINLOG MONITOR"-rechten in plaats van "REPLICATION SLAVE", "SHOW SLAVE HOSTS" vereist "REPLICATION MASTER ADMIN"-rechten in plaats van "REPLICATION SLAVE", "SHOW SLAVE STATUS" vereist "REPLICATION SLAVE ADMIN" of "SUPER" in plaats van "REPLICATION CLIENT", "SHOW RELAYLOG EVENTS" vereist "REPLICATION SLAVE ADMIN"-rechten in plaats van "REPLICATION SLAVE".
  • Ontwerpen toegevoegd "INVOEGEN...RETOURNEREN"En"VERVANGEN...RETOURNEREN", waarbij een lijst met ingevoegde/vervangen vermeldingen in het formulier wordt geretourneerd alsof de waarden zijn geretourneerd met behulp van een SELECT-expressie (vergelijkbaar met "DELETE ... RETURNING").

    VOEG IN t2 WAARDEN IN (1,'Hond'),(2,'Leeuw'),(3,'Tijger'),(4,'Luipaard')
    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 |
    +——+———+———+———-+

  • Uitdrukkingen toegevoegd "BEHALVE ALLEN"En"SNIJD ALLES» om het resultaat uit te sluiten/aan te vullen met een specifieke set waarden.
  • Het is nu mogelijk om commentaar te specificeren binnen de blokken “CREATE DATABASE” en “ALTER DATABASE”.
  • Constructies toegevoegd voor het hernoemen van indexen en kolommen "WIJZIG TABEL ... HERNOEM INDEX / SLEUTEL" En "TABEL WIJZIGEN... KOLOM HERMEN".
  • Bij de bewerkingen “ALTER TABLE” en “RENAME TABLE” is ondersteuning voor de voorwaarde “IF EXISTS” toegevoegd, zodat de bewerking alleen kan worden uitgevoerd als de tabel bestaat;
  • Voor indexen in “CREATE TABLE” het attribuut “ZICHTBAAR".
  • "CYCLE"-expressie toegevoegd om recursieve lussen te identificeren CTE.
  • Functies toegevoegd JSON_ARRAYAGG и JSON_OBJECTAGG om een ​​array of JSON-object te retourneren met de waarden van de opgegeven kolom.
  • Service-informatietabellen (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS en THREAD_POOL_WAITS) toegevoegd voor de threadpool (thread_pool).
  • De ANALYZE-expressie wordt uitgebreid om de tijd weer te geven die is besteed aan het controleren van het WHERE-blok en het uitvoeren van aanvullende bewerkingen.
  • De bereikverwerkingsoptimalisatie houdt rekening met de “IS NOT NULL”-kenmerken
  • De grootte van tijdelijke bestanden die worden gebruikt bij het sorteren met de typen VARCHAR, CHAR en BLOB is aanzienlijk verminderd.
  • В binair logboek, gebruikt om replicatie te organiseren, zijn nieuwe metagegevensvelden toegevoegd, waaronder Primaire sleutel, Kolomnaam, Tekenset en Geometrietype. Het mariadb-binlog hulpprogramma en de opdrachten “SHOW BINLOG EVENTS” en “SHOW RELAYLOG EVENTS” bieden weergave van replicatievlaggen.
  • ontwerp DROP TAFEL nu is het veilig verwijdert tabellen die in de opslagengine blijven staan, zelfs als er geen ".frm"- of ".par"-bestanden zijn.
  • Implementeerde een hardwareversnelde versie van de crc32()-functie voor AMD64-, ARMv8- en POWER 8-CPU's.
  • Enkele standaardinstellingen gewijzigd. innodb_encryption_threads is verhoogd naar 255 en max_sort_length is verhoogd van 4 naar 8.
  • Er worden talloze prestatie-optimalisaties voor de InnoDB-engine gepresenteerd.
  • Er is volledige ondersteuning toegevoegd aan het synchrone multi-master replicatiemechanisme van Galera GTID (Global Transaction ID), transactie-ID's die gemeenschappelijk zijn voor alle clusterknooppunten.
  • Er is een overstap gemaakt naar een nieuwe vestiging van de bibliotheek PCRE2 (Perl-compatibele reguliere expressies), in plaats van de klassieke PCRE 8.x-serie.
  • Er zijn nieuwe versies van harnassen voorgesteld voor verbinding met de MariaDB en MySQL DBMS vanuit programma's in Python en C: MariaDB-connector/Python 1.0.0 и MariaDB-connector/C 3.1.9. De Python-binding voldoet aan de Python DB API 2.0, is geschreven in C en gebruikt de Connector/C-bibliotheek om verbinding te maken met de server.

Bron: opennet.ru

Voeg een reactie