Efter ett Ärs utveckling och fyra förhandsversioner den första stabila versionen av den nya databashanteraren , inom vilken en avknoppning frÄn MySQL utvecklas, som behÄller bakÄtkompatibilitet och integrationen av ytterligare lagringsmotorer och utökade funktioner. Stöd för den nya versionen kommer att tillhandahÄllas i 5 Är, fram till juni 2025.
Utvecklingen av MariaDB övervakas av den oberoende organisationen MariaDB Foundation i enlighet med en helt öppen och transparent utvecklingsprocess som inte Àr beroende av enskilda leverantörer. MariaDB levereras istÀllet för MySQL i mÄnga Linux-distributioner (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) och Àr införlivad i stora projekt som , och .
Nyckel :
- En lagringsmotor har lagts till , vilket gör att MariaDB-tabeller kan placeras i Amazon S3 eller vilket annat offentligt eller privat molnlagringssystem som stöder S3 API. Stöd för placering i S3 finns bÄde för vanliga och partitionerade tabeller. NÀr partitionerade tabeller placeras i molnet kan de anvÀndas direkt Àven frÄn en annan server med tillgÄng till S3-lagringen.
- En lagringsmotor har lagts till , som lagrar data kopplat till kolumner och anvÀnder distribuerad arkitektur. Motorn bygger pÄ arbetet med MySQL-lagringen och Àr avsedd för att organisera bearbetning och genomförande av analytiska frÄgor över stora datamÀngder (Data Warehouse).
ColumnStore lagrar data inte radvis, utan med uppdelning i kolumner, vilket gör att grupperingar av kolumner frÄn stora databaser som innehÄller petabyte av data kan optimeras. LinjÀr skalning, lagring av data i komprimerad form, vertikal och horisontell partitionering samt effektiv exekvering av konkurrerande frÄgor stöds. - Alla körbara filer som börjar med ordet «mysql» har döpts om med anvÀndning av ordet «mariadb». De gamla namnen har sparats som symboliska lÀnkar.
- En ny datatyp har lagts till för lagring av IPv6-adresser.
- Arbete har utförts för att dela upp privilegier i mindre komponenter. IstÀllet för den övergripande privilegiet SUPER föreslÄs en serie utvalda privilegier: «BINLOG ADMIN»,
«BINLOG REPLAY»,
«CONNECTION ADMIN»,
«FEDERATED ADMIN»,
«READ_ONLY ADMIN»,
«REPLICATION MASTER ADMIN»,
«REPLICATION SLAVE ADMIN» och
«SET USER». - Privilegiet "REPLICATION CLIENT" har döpts om till "BINLOG MONITOR", och uttrycket "SHOW MASTER STATUS" har blivit "SHOW BINLOG STATUS". OmbenÀmningen klargör funktionen och har inget att göra med politisk korrekthet, projektet överger inte termerna master/slave och har till och med lagt till nya privilegier "MASTER ADMIN" och "SLAVE ADMIN". Dessutom har ett nytt nyckelord "REPLICA" lagts till i SQL-uttrycken, vilket Àr en synonym till "SLAVE".
- För vissa uttryck har privilegierna som krÀvs för deras utförande Àndrats. "SHOW BINLOG EVENTS" krÀver nu rÀttigheten "BINLOG MONITOR" istÀllet för "REPLICATION SLAVE", "SHOW SLAVE HOSTS" krÀver privilegiet "REPLICATION MASTER ADMIN" istÀllet för "REPLICATION SLAVE", "SHOW SLAVE STATUS" krÀver rÀttigheten "REPLICATION SLAVE ADMIN" eller "SUPER" istÀllet för "REPLICATION CLIENT", och "SHOW RELAYLOG EVENTS" krÀver rÀttigheten "REPLICATION SLAVE ADMIN" istÀllet för "REPLICATION SLAVE".
- Konstruktioner har lagts till "" och "«, vilka returnerar en lista av insatta/ersatta poster i formen av vÀrden som skulle ha returnerats vid anvÀndning av uttrycket SELECT (liknande "DELETE ⊠RETURNING").
INSERT INTO t2 VALUES (1,'Hund'),(2,'Lejon'),(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 |
+ââ+âââ+âââ+âââ-+ - Uttrycken "" och "» har lagts till för att utesluta/tillĂ€gga resultatet med en specifik uppsĂ€ttning vĂ€rden.
- Det har blivit möjligt att ange kommentarer inom blocken "CREATE DATABASE" och "ALTER DATABASE".
- Konstruktioner för att döpa om index och kolumner har lagts till "» och ««.
- Vid operationen "ALTER TABLE" och "RENAME TABLE" har stöd för villkoret "IF EXISTS" lagts till för att utföra operationen endast om tabellen existerar;
- För index i "CREATE TABLE" har attributet "«.
- Uttrycket "CYCLE" har lagts till för att identifiera rekursiva cykler .
- Nya funktioner och för att returnera en array eller objekt JSON med vÀrden frÄn den angivna kolumnen.
- TjÀnsteinformationstabeller (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS och THREAD_POOL_WAITS) har lagts till för trÄdpuljen (thread_pool).
- Uttrycket ANALYZE har utvidgats för att visa den tid som spenderas pÄ att kontrollera WHERE-klausulen och utföra hjÀlpoperationer.
- Optimala behandlingen av omrÄden har beaktat tecknen "IS NOT NULL"
- Den temporÀra filens storlek som anvÀnds vid sortering med typerna VARCHAR, CHAR och BLOB har vÀsentligt minskats.
- I , som anvÀnds för att organisera replikering, har nya metadatafÀlt lagts till, inklusive Primary Key, Column Name, Character Set och Geometry Type. I mariadb-binlog-verktyget och kommandona "SHOW BINLOG EVENTS" och "SHOW RELAYLOG EVENTS" presenteras replikeringsflaggor.
- Konstruktion nu pÄlitlig tabeller som finns kvar i lagringsmotorn, Àven om filerna ".frm" eller ".par" saknas.
- En hÄrdvaruaccelererad version av funktionen crc32() för CPU AMD64, ARMv8 och POWER 8 har implementerats.
- NÄgra standardinstÀllningar har Àndrats. Parameter innodb_encryption_threads har ökat till 255, och vÀrdet max_sort_length har ökat frÄn 4 till 8.
- MÄnga prestandaoptimeringar för InnoDB-motorn har presenterats.
- FullstÀndigt stöd för synkron multi-master-replikering har lagts till i Galera (Global Transaction ID), gemensamma transaktionsidentifierare för alla noder i klustret.
- ĂvergĂ„ngen till ett nytt bibliotek har genomförts (Perl Compatible Regular Expressions), istĂ€llet för den klassiska serien PCRE 8.x.
- Nya versioner av bindningar för att ansluta till databashanterare MariaDB och MySQL frÄn program i sprÄken Python och C har föreslagits: och . Bindningen för Python följer Python DB API 2.0, Àr skriven i C och anvÀnder biblioteket Connector/C för att ansluta till servern.
KĂ€lla: opennet.ru
