Π‘Π»Π΅Π΄ 6 ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±Π΅ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π° ΠΏΡΡΠ²Π°ΡΠ° ΡΡΠ°Π±ΠΈΠ»Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° Π½ΠΎΠ²ΠΈΡ ΠΊΠ»ΠΎΠ½ Π½Π° Π‘Π£ΠΠ MariaDB 10.7 (10.7.2), Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΠΊΠ»ΠΎΠ½ ΠΎΡ MySQL, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΠΎΠ±ΡΠ°ΡΠ½Π° ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ ΠΈ ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. Π Π°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° MariaDB ΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° ΠΎΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠ°ΡΠ° ΡΠΎΠ½Π΄Π°ΡΠΈΡ MariaDB, ΡΠ»Π΅Π΄Π²Π°ΠΉΠΊΠΈ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΈ ΠΏΡΠΎΠ·ΡΠ°ΡΠ΅Π½ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌ ΠΎΡ ΠΎΡΠ΄Π΅Π»Π½ΠΈΡΠ΅ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ. MariaDB ΡΠ΅ Π΄ΠΎΡΡΠ°Π²Ρ Π²ΠΌΠ΅ΡΡΠΎ MySQL Π² ΠΌΠ½ΠΎΠ³ΠΎ Linux Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) ΠΈ Π΅ Π²ΡΠ·ΠΏΡΠΈΠ΅ΡΠ° ΠΎΡ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΈ ΠΊΠ°ΡΠΎ Wikipedia, Google Cloud SQL ΠΈ Nimbuzz.
Π ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π±ΡΡ Π° ΡΡΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΠΏΡΡΠ²Π°ΡΠ° ΡΠ΅ΡΡΠΎΠ²Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡ Π·Π½Π°ΡΠΈΠΌ ΠΊΠ»ΠΎΠ½ Π½Π° MariaDB 10.8.1 ΠΈ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°ΡΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ 10.6.6, 10.5.14, 10.4.23, 10.3.33 ΠΈ 10.2.42. ΠΠ΅ΡΡΠΈΡ 10.7.2 Π±Π΅ΡΠ΅ ΠΏΡΡΠ²Π°ΡΠ°, ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡΡ ΠΏΡΠ΅ΠΌΠΈΠ½Π° ΠΊΡΠΌ Π½ΠΎΠ² ΠΌΠΎΠ΄Π΅Π» Π½Π° ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° ΠΎΡ 5 Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π½Π° 1 Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ ΠΏΡΠ΅Ρ ΠΎΠ΄ ΠΊΡΠΌ ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ Π½Π° Π·Π½Π°ΡΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π΅ Π²Π΅Π΄Π½ΡΠΆ Π³ΠΎΠ΄ΠΈΡΠ½ΠΎ, Π° Π²Π΅Π΄Π½ΡΠΆ Π½Π° ΡΡΠΈΠΌΠ΅ΡΠ΅ΡΠΈΠ΅ .
ΠΠ»ΡΡΠΎΠ²ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² MariaDB 10.7:
- ΠΠΎΠ² ΡΠΈΠΏ Π΄Π°Π½Π½ΠΈ UUID Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π·Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° 128-Π±ΠΈΡΠΎΠ²ΠΈ ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ (Universally Unique Identifier).
- ΠΡΠ΅Π΄Π»Π°Π³Π°Ρ ΡΠ΅ Π½ΠΎΠ²ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° JSON Π΄Π°Π½Π½ΠΈ: JSON_EQUALS() Π·Π° ΡΡΠ°Π²Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΠΎΡΡΡΠ° Π½Π° Π΄Π²Π° JSON Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° ΠΈ JSON_NORMALIZE() Π·Π° ΠΏΡΠΈΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° JSON ΠΎΠ±Π΅ΠΊΡΠΈ Π²ΡΠ² ΡΠΎΡΠΌΠ°, ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ° Π·Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ (ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΠΎΡΡΠΈΡΠ°Π½Π΅ ΠΏΠΎ ΠΊΠ»ΡΡ ΠΈ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΈ).
- Π€ΡΠ½ΠΊΡΠΈΡΡΠ° NATURAL_SORT_KEY() Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π·Π° ΡΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π½ΠΈΠ·ΠΎΠ²Π΅ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΠΈΡΠ»ΠΎΠ²ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½ΠΈΠ·ΡΡ "v10" ΡΠ»Π΅Π΄ ΡΠΎΡΡΠΈΡΠ°Π½Π΅ ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅ ΡΠ»Π΅Π΄ Π½ΠΈΠ·Π° "v9").
- Π€ΡΠ½ΠΊΡΠΈΡΡΠ° SFORMAT() Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π·Π° ΡΠΎΡΠΌΠ°ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ Π½ΠΈΠ· - Π²Ρ ΠΎΠ΄ΡΡ Π΅ Π½ΠΈΠ· Ρ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π·Π° ΡΠΎΡΠΌΠ°ΡΠΈΡΠ°Π½Π΅ ΠΈ ΡΠΏΠΈΡΡΠΊ ΡΡΡ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π·Π° Π·Π°ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 'SFORMAT("ΠΡΠ³ΠΎΠ²ΠΎΡΡΡ Π΅ {}.", 42)') .
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΎ ΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π² Π·Π°ΡΠ²ΠΊΠΈ INSERT, ΠΊΠΎΠΈΡΠΎ Π΄ΠΎΠ±Π°Π²ΡΡ Π΄Π°Π½Π½ΠΈ ΠΊΡΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅Π΄ΠΎΠ²Π΅ (ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° GET DIAGNOSTICS Π²Π΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π° ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΡΠΎ ROW_NUMBER, ΡΠΊΠ°Π·Π²Π°ΡΠΎ Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° ΡΠ΅Π΄Π° Ρ Π³ΡΠ΅ΡΠΊΠ°ΡΠ°).
- ΠΠΊΠ»ΡΡΠ΅Π½ Π΅ Π½ΠΎΠ² ΠΏΠ»ΡΠ³ΠΈΠ½ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΏΠ°ΡΠΎΠ»ΠΈ, password_reuse_check, Π·Π° Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠ°ΡΠΎΠ»ΠΈ ΠΎΡ Π΅Π΄ΠΈΠ½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» (ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π΄Π°Π»ΠΈ Π½ΠΎΠ²Π°ΡΠ° ΠΏΠ°ΡΠΎΠ»Π° Π½Π΅ ΡΡΠ²ΠΏΠ°Π΄Π° Ρ ΠΏΠ°ΡΠΎΠ»ΠΈΡΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΏΡΠ΅Π· Π²ΡΠ΅ΠΌΠ΅ΡΠΎ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° password_reuse_check_interval).
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠ·ΡΠ°Π·ΠΈΡΠ΅ βALTER TABLE ... CONVERT PARTITION .. TO TABLEβ ΠΈ βALTER TABLE ... CONVERT TABLE ... TO PARTITIONβ Π·Π° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° Π΄ΡΠ» Π² ΡΠ°Π±Π»ΠΈΡΠ° ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ.
- ΠΠΏΡΠΈΡΡΠ° β--as-ofβ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΊΡΠΌ ΠΏΠΎΠΌΠΎΡΠ½Π°ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ° mariadb-dump Π·Π° ΠΈΠ·Ρ Π²ΡΡΠ»ΡΠ½Π΅ Π½Π° Π΄ΡΠΌΠΏ, ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π°Ρ Π½Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ Π½Π° Π²Π΅ΡΡΠΈΡΠ½Π° ΡΠ°Π±Π»ΠΈΡΠ°.
- ΠΠ° MariaDB Galera Cluster Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΡΡΠΎΡΠ½ΠΈΡ βΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π² ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡβ βΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π·Π° TOI DDLβ βΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° ΠΏΠΎΡΠΎΠΊΠ°β ΠΈ βΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π·Π° ΡΠ΅ΡΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅β ΡΠ° Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ Π² PROCESSLIST.
- ΠΡΠΌ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠ° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π½ΠΎΠ² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ "reorder". ΠΠ° ΠΌΠ½ΠΎΠ³ΠΎΠ±Π°ΠΉΡΠΎΠ²ΠΈ Π½ΠΈΠ·ΠΎΠ²Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π°, ΠΊΠ°ΡΠΎ ΡΠ΅ Π²Π·Π΅ΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π·Π½Π°ΡΠΈΡΠ΅ ΠΏΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ASCII Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΈ.
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎ Π²ΠΌΡΠΊΠ²Π°Π½Π΅, ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠΎΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ°Π½Π΅ Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ Π½Π° InnoDB.
- ΠΠΎΠΏΡΠ°Π²Π΅Π½ΠΈ ΡΠ° 5 ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈΡΠ΅ Π·Π° ΠΊΠΎΠΈΡΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΡΠ° ΡΠ°Π·ΠΊΡΠΈΡΠΈ: CVE-2022-24052, CVE-2022-24051, CVE-2022-24050, CVE-2022-24048, CVE-2021-46659.
- ΠΡ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π² ΡΠ΅ΡΡΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° MariaDB 10.8.1 ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈΠΌ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, ΡΠΎΡΡΠΈΡΠ°Π½ΠΈ Π² Π½ΠΈΠ·Ρ ΠΎΠ΄ΡΡ ΡΠ΅Π΄, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ ORDER BY ΠΏΡΠΈ ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π² ΠΎΠ±ΡΠ°ΡΠ΅Π½ ΡΠ΅Π΄. Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅ IN, OUT, INOUT ΠΈ IN OUT ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. InnoDB Π΅ Π½Π°ΠΌΠ°Π»ΠΈΠ» Π±ΡΠΎΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ Π·Π° Π·Π°ΠΏΠΈΡ ΠΏΡΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° Π²ΡΡΡΠ°Π½Π΅ Π½Π°Π·Π°Π΄ (ΠΏΠΎΠ²ΡΠ°ΡΡΠ½Π΅).
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru