MariaDB 10.5 stable na release

Pagkatapos ng isang taon ng pag-unlad at apat na pre-release nakahanda unang matatag na paglabas ng isang bagong sangay ng DBMS MariaDB 10.4, kung saan binubuo ang isang sangay ng MySQL na nagpapanatili ng pabalik na pagkakatugma at magkaiba pagsasama-sama ng mga karagdagang storage engine at mga advanced na kakayahan. Ang suporta para sa bagong sangay ay ibibigay sa loob ng 5 taon, hanggang Hunyo 2025.

Ang pag-unlad ng MariaDB ay pinangangasiwaan ng independiyenteng MariaDB Foundation, kasunod ng ganap na bukas at transparent na proseso ng pag-unlad na independiyente sa mga indibidwal na vendor. Ang MariaDB ay ibinibigay sa halip na MySQL sa maraming distribusyon ng Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) at ipinatupad sa mga malalaking proyekto tulad ng Wikipedia, Google Cloud SQL и Nimbuzz.

Susi mga pagpapabuti MariaDB 10.5:

  • Nagdagdag ng storage engine S3, na nagbibigay-daan sa iyong mag-host ng mga talahanayan ng MariaDB sa Amazon S3 o anumang iba pang pampubliko o pribadong cloud storage na sumusuporta sa S3 API. Ang paglalagay ng parehong regular at partitioned table sa S3 ay sinusuportahan. Kapag ang mga naka-partition na talahanayan ay inilagay sa cloud, maaari silang direktang gamitin, kabilang ang mula sa isa pang server na may access sa S3 storage.
  • Nagdagdag ng storage engine ColumnStore, na nag-iimbak ng data na nakatali sa mga column at gamit massively parallel ipinamahagi na arkitektura. Ang makina ay batay sa mga pagpapaunlad ng MySQL storage InfiniDB at nilayon para sa pag-aayos ng pagproseso at pagpapatupad ng mga analytical na query sa malalaking halaga ng data (Data Warehouse).
    Ang ColumnStore ay nag-iimbak ng data hindi row sa row, ngunit ayon sa mga column, na nagbibigay-daan sa iyong i-optimize ang performance ng pagpapangkat ayon sa mga column mula sa isang malaking database, kabilang ang mga petabytes ng data. Sinusuportahan ang linear scaling, naka-compress na imbakan ng data, patayo at pahalang na partitioning, at mahusay na pagpapatupad ng mga nakikipagkumpitensyang kahilingan.

  • Ang lahat ng mga executable na nagsisimula sa salitang "mysql" ay pinalitan ng pangalan upang magamit ang salitang "mariadb". Ang mga lumang pangalan ay nakaimbak sa anyo ng mga simbolikong link.
  • Nagdagdag ng bagong uri ng data INET6 para sa pag-iimbak ng mga IPv6 address.
  • Ang trabaho ay ginawa upang paghiwalayin ang mga pribilehiyo sa mas maliliit na bahagi. Sa halip na pangkalahatang pribilehiyong SUPER, isang serye ng mga piling pribilehiyong “BINLOG ADMIN” ang iminungkahi,
    "BINLOG REPLAY"
    "CONNECTION ADMIN"
    "FEDERATED ADMIN"
    "READ_ONLY ADMIN",
    "REPLICATION MASTER ADMIN"
    "REPLICATION SLAVE ADMIN" at
    "Itakda ang USER".

  • Ang pribilehiyong "REPLICATION CLIENT" ay pinalitan ng pangalan sa "BINLOG MONITOR" at ang expression na "SHOW MASTER STATUS" ay naging "SHOW BINLOG STATUS". Ang pagpapalit ng pangalan ay nililinaw ang pag-uugali at hindi nauugnay sa katumpakan sa pulitika, hindi inabandona ng proyekto ang mga terminong master/slave at nagdagdag pa ng mga bagong pribilehiyo na “MASTER ADMIN” at “SLAVE ADMIN”. Kasabay nito, isang bagong key na "REPLICA" ang idinagdag sa SQL expression, na kasingkahulugan ng "SLAVE".
  • Para sa ilang mga expression, ang mga pribilehiyo na kinakailangan upang maisagawa ang mga ito ay binago. Ang "SHOW BINLOG EVENTS" ay nangangailangan na ngayon ng mga pribilehiyong "BINLOG MONITOR" sa halip na "REPLICATION SLAVE", "SHOW SLAVE HOSTS" ay nangangailangan ng "REPLICATION MASTER ADMIN" na mga pribilehiyo sa halip na "REPLICATION SLAVE", "SHOW SLAVE STATUS" ay nangangailangan ng "REPLICATION SLAVE ADMIN" o Ang " SUPER" sa halip na "REPLICATION CLIENT", "SHOW RELAYLOG EVENTS" ay nangangailangan ng mga karapatan sa "REPLICATION SLAVE ADMIN" sa halip na "REPLICATION SLAVE".
  • Nagdagdag ng mga disenyo"INSERT...BUMALIK"At"PALITAN...BUMALIK", ibinabalik ang isang listahan ng mga ipinasok/pinalitan na mga entry sa form na parang ang mga halaga ay ibinalik gamit ang isang SELECT expression (katulad ng "DELETE ... RETURNING").

    INSERT IN TO t2 VALUES (1,'Aso'),(2,'Leon'),(3,'Tigre'),(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 |
    +——+———+———+———-+

  • Nagdagdag ng mga expression "MALIBAN SA LAHAT"At"INTERSECT LAHAT» upang ibukod/dagdagan ang resulta ng isang partikular na hanay ng mga halaga.
  • Posible na ngayong tukuyin ang mga komento sa loob ng "GUMAWA NG DATABASE" at "ALTER DATABASE" na mga bloke.
  • Nagdagdag ng mga construct para sa pagpapalit ng pangalan ng mga index at column "ALTER TABLE ... RENAME INDEX / KEY"At"ALTER TABLE ... RENAME COLUMN".
  • Sa mga operasyong "ALTER TABLE" at "RENAME TABLE", ang suporta para sa kondisyong "IF EXISTS" ay idinagdag upang maisagawa ang operasyon kung mayroon lamang ang talahanayan;
  • Para sa mga index sa “CREATE TABLE” ang attribute na “MABUTI".
  • Idinagdag ang expression na "CYCLE" upang matukoy ang mga recursive na loop CTE.
  • Idinagdag ang mga tampok JSON_ARRAYAGG и JSON_OBJECTAGG upang ibalik ang isang array o JSON object na may mga halaga ng tinukoy na column.
  • Nagdagdag ng mga talahanayan ng impormasyon ng serbisyo (THREAD_POOL_GROUPS, THREAD_POOL_QUEUES, THREAD_POOL_STATS at THREAD_POOL_WAITS) para sa thread pool (thread_pool).
  • Ang ANALYZE expression ay pinalawak upang ipakita ang oras na ginugol sa pagsuri sa WHERE block at pagsasagawa ng mga auxiliary na operasyon.
  • Isinasaalang-alang ng range processing optimizer ang mga katangiang "IS NOT NULL".
  • Ang laki ng mga pansamantalang file na ginamit kapag nag-uuri sa mga uri ng VARCHAR, CHAR at BLOB ay makabuluhang nabawasan.
  • В binary log, na ginagamit upang ayusin ang pagtitiklop, nagdagdag ng mga bagong metadata field, kabilang ang Pangunahing Key, Pangalan ng Column, Set ng Character at Uri ng Geometry. Ang mariadb-binlog utility at ang “SHOW BINLOG EVENTS” at “SHOW RELAYLOG EVENTS” ay nagbibigay ng pagpapakita ng replication flags.
  • Konstruksiyon DROP TABLE ngayon ay ligtas na nag-aalis mga talahanayan na nananatili sa storage engine kahit na walang ".frm" o ".par" na mga file.
  • Nagpatupad ng hardware accelerated na bersyon ng crc32() function para sa AMD64, ARMv8 at POWER 8 na mga CPU.
  • Binago ang ilang default na setting. innodb_encryption_threads ay nadagdagan sa 255 at max_sort_length ay nadagdagan mula 4 hanggang 8.
  • Maraming performance optimization para sa InnoDB engine ang ipinakita.
  • Ang buong suporta ay naidagdag sa Galera sabaysabay na multi-master na mekanismo ng pagtitiklop GTID (Global Transaction ID), mga transaction identifier na karaniwan sa lahat ng cluster node.
  • Ang paglipat sa isang bagong sangay ng aklatan ay ginawa PCRE2 (Perl Compatible Regular Expressions), sa halip na ang klasikong PCRE 8.x series.
  • Ang mga bagong bersyon ng harnesses ay iminungkahi para sa pagkonekta sa MariaDB at MySQL DBMS mula sa mga programa sa Python at C: MariaDB Connector/Python 1.0.0 и MariaDB Connector/C 3.1.9. Ang Python binding ay sumusunod sa Python DB API 2.0, ay nakasulat sa C at ginagamit ang Connector/C library para kumonekta sa server.

Pinagmulan: opennet.ru

Magdagdag ng komento