MariaDB Server 10.5 er en frisk, ny og stabil version fra MariaDB, der blev frigivet den 24. juni 2020. Lad os tage et kig på de funktioner, den vil bringe os.
Flere detaljerede privilegier
Med MariaDB 10.5 kommer nogle ændringer vedrørende privilegierne. Hovedsageligt er SUPER-privilegier blevet opdelt i flere nye privilegier, der gør det muligt at indstille mere detaljeret kontrol over, hvilke handlinger der er tilladt for givne brugere, og hvad der ikke er. Nedenfor er listen over de nye privilegier, der er tilgængelige i MariaDB 10.5:
- BINLOG ADMIN
- BINLOGGENSPIL
- ADMINISTRATION FOR FORBINDELSE
- FEDERATED ADMIN
- READ_ONLY ADMIN
- REPLICATION MASTER ADMIN
- REPLICATION SLAVE ADMIN
- INDSTIL BRUGER
InnoDB-ydelsesforbedringer
MariaDB 10.5 kommer med en liste over ydeevneforbedringer til InnoDB. Det, der er vigtigt at vide, er, at MariaDB 10.5 har indlejret InnoDB fra MariaDB 10.4. Der vil være præstationsændringer og forbedringer, men kernen i InnoDB er den samme som i MariaDB 10.4. Det er meget interessant at se, hvordan den vej MariaDB har valgt vil bringe med hensyn til ydeevnen. På den ene side tillader det at holde fast i den gamle version hurtigere udgivelsescyklusser for MariaDB - at overføre helt nye InnoDB til MariaDB ville være noget af en udfordring, og lad os være ærlige, er det måske ikke rigtigt muligt at opnå. Vær opmærksom på, at MariaDB bliver mere og mere uforenelig med upstream. Det er et stykke tid siden den sidste build, hvor du bare kunne bytte binære filer, og alt ville fungere uden problemer.
MariaDB udviklede sit sæt funktioner som kryptering eller komprimering, hvilket gør disse implementeringer ikke kompatible. På den anden side har nye InnoDB vist markant bedre ydeevne end MariaDB 10.4. Der er skrevet mange linjer kode (og mange linjer kode er blevet fjernet) for at gøre den mere skalerbar end den tidligere version. Det bliver meget interessant at se, om MariaDB 10.5 vil være i stand til at udkonkurrere sine samtidige.
Vi vil ikke komme i detaljer, da dette er, hvad du kan finde på MariaDB-webstedet, vi vil gerne nævne nogle af ændringerne. InnoDB-redologs har set noget arbejde, der gør dem mere effektive. InnoDB-bufferpuljen er også blevet forbedret i det omfang, at muligheden for at oprette flere bufferpuljer er blevet fjernet, da det ikke længere var nødvendigt - ydeevneudfordringer, det var tilsigtet at rette, var allerede blevet rettet i 10.5, hvilket gør denne mulighed ikke nødvendig.
Hvad der også er vigtigt at huske på er, at InnoDB i 10.5 på grund af ændringerne vil være inkompatibel med InnoDB i 10.4. Opgraderingen vil kun være envejs, du bør planlægge din opgraderingsproces i overensstemmelse hermed.
Fuld GTID-understøttelse til Galera Cluster
Galera Cluster kommer i MariaDB 10.5 med fuld GTID-understøttelse. Dette skulle gøre blandingen af Galera Cluster og asynkron replikering mere problemfri og mindre problematisk.
Flere metadata til replikering og binære logfiler
Når vi taler om replikering, har MariaDB 10.5 forbedret binære log-metadata. Den kommer med flere oplysninger om de data, der replikeres:
- Fortegnelse af numeriske kolonner
- Tegnsæt af tegnkolonner og binære kolonner
- Kolonnenavn
- Strengværdi for SET-kolonner
- Strengværdi for ENUM-kolonner
- Primær nøgle
- Tegnsæt af SET-kolonner og ENUM-kolonner
- Geometritype
Dette skulle hjælpe med at undgå replikeringsproblemer, hvis der er forskellige skemaer på master og på slaven.
Syntaks
Adskillige ændringer i SQL-syntaks er blevet introduceret i MariaDB 10.5. INTERSECT giver os mulighed for at skrive en forespørgsel, der vil resultere i rækker, der returneres af to SELECT-sætninger. I MariaDB 10.5 er INTERSECT ALL tilføjet, hvilket gør det muligt at returnere et resultatsæt med duplikerede værdier. På samme måde er EXCEPT blevet forbedret for at tillade UNDTAGET ALLE.
Der er foretaget et par ændringer i ALTER-syntaksen - du kan nu omdøbe kolonner med ALTER TABLE … RENAME COLUMN. Det er også muligt at omdøbe indeks ved hjælp af ALTER TABLE … RENAME KEY syntaks. Hvad der er ret vigtigt, både ALTER TABLE og RENAME TABLE modtog en støtte til IF EXISTS, det vil helt sikkert hjælpe med hensyn til replikeringshåndtering.
Ydeevneskemaopdateringer, der matcher MySQL 5.7
Performance Schema-tabeller er blevet opdateret, så de vil være på niveau med Performance Schema fra MySQL 5.7. Dette betyder ændringer i instrumentering relateret til hukommelse, metadatalåsning, forberedte udsagn, lagrede procedurer, låsning, transaktioner og brugervariable.
Binære filer med navn mariadb
Sidst, men ikke mindst, er binære filer blevet ændret fra 'mysql' til 'mariadb'. Den gamle navnekonvention kan dog stadig bruges til at bevare kompatibiliteten med eksisterende scripts og værktøjer.
Oven i købet er der indført flere andre ændringer. JSON-array- og objektaggregeringsfunktion, forbedret instrumentering til forbindelsespuljen, forbedringer i forespørgselsoptimering eller migrering til ny version af biblioteket til regulære udtryk. Integration med S3 er også blevet introduceret - du kan læse data fra S3 buckets inde fra MariaDB 10.5.
Vi glæder os til at se, hvordan denne nye MariaDB-version vil se ud i produktionsmiljøer. Hvis du er interesseret i at prøve, er migreringsinstruktioner tilgængelige på MariaDB-webstedet