ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ Π‘Π£ΠΠ MariaDB 12.2.2, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΌΠ΅ΡΠ΅Π½ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π»ΠΈΠ· Π²Π΅ΡΠΊΠΈ 12.2. ΠΠ΅ΡΠΊΠ° MariaDB 12.2 ΠΎΡΠ½Π΅ΡΠ΅Π½Π° ΠΊ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΠΌ Π²ΡΠΏΡΡΠΊΠ°ΠΌ (rolling), ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎΠ΅ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΏΡΠΈΡΠ»Π° Π½Π° ΡΠΌΠ΅Π½Ρ Π²Π΅ΡΠΊΠ΅ MariaDB 12.1. ΠΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ MariaDB 12.3.1 Ρ Π½ΠΎΠ²ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ binlog, ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΡΡΠ°ΡΡΡ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠ° Π² ΡΠ΅Π»ΠΈΠ·Ρ Π±ΡΠ΄ΡΡΠ΅ΠΉ LTS-Π²Π΅ΡΠΊΠΈ. ΠΠ΅ΡΠΊΠ° MariaDB 12.2 Π±ΡΠ΄Π΅Ρ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°ΡΡΡΡ Π΄ΠΎ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠΏΡΡΠΊΠ° 12.3.2.
ΠΡΠΎΠ΅ΠΊΡΠΎΠΌ MariaDB ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ MySQL, ΡΠΎΡ ΡΠ°Π½ΡΡΡΠ΅Π΅ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΠ΅Π΅ΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠ΅ΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π΄Π²ΠΈΠΆΠΊΠΎΠ² Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ. Π Π°Π·Π²ΠΈΡΠΈΠ΅ MariaDB ΠΊΡΡΠΈΡΡΠ΅Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠ°Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ MariaDB Foundation Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π½Π΅ Π·Π°Π²ΠΈΡΡΡΠΈΠΌ ΠΎΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ. MariaDB ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠΎ MySQL Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Ρ Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) ΠΈ Π²Π½Π΅Π΄ΡΡΠ½ Π² ΡΠ°ΠΊΠΈΡ ΠΊΡΡΠΏΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ , ΠΊΠ°ΠΊ Wikipedia, Google Cloud SQL ΠΈ Nimbuzz.
Π‘ΡΠ΅Π΄ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Π΅ΡΠΊΠ΅ MariaDB 12.2:
- Π ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ Π‘Π£ΠΠ Oracle ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΡΠ½ΠΊΡΠΈΠΈ TO_NUMBER (ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΡΠΈΡΠ»ΠΎ) ΠΈ TRUNC (ΡΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΎ ΡΠ°ΡΠ°, Π΄Π½Ρ, ΠΌΠ΅ΡΡΡΠ°, Π³ΠΎΠ΄Π°).
- ΠΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠ»ΠΈΡΠ½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ (JOIN) ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ, ΡΡΠΈΡΡΠ²Π°ΡΡΠ°Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΡΡΡ ΡΡΡΠΎΠΊ Π² ΠΏΠΎΠ΄Π·Π°ΠΏΡΠΎΡΠ°Ρ Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Β«GROUP BYΒ» Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³Π½ΠΎΠ·ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΠ»Π° ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΠΈΡ ΡΡΡΠΎΠΊ (out_rows) ΠΈ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΎΠΏΡΠΈΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠΎΠΌ ROWID_FILTER/NO_ROWID_FILTER ΠΈ INDEX_MERGE/NO_INDEX_MERGE, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π½Π΅ΡΠ²Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΈΠΌΡΠ½ Π±Π»ΠΎΠΊΠΎΠ² Π² Π·Π°ΠΏΡΠΎΡΠ°Ρ (ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡΠ΅ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΎΠΏΡΠΈΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΊ ΡΠ°ΡΡΡΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΡΡΡΠ»Π°ΡΡΡ Π½Π° Π½ΠΈΡ ΠΏΠΎ ΠΈΠΌΠ΅Π½Π°ΠΌ Β«select#NΒ», Π³Π΄Π΅ N β ΠΏΠΎΡΡΠ΄ΠΊΠΎΠ²ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π±Π»ΠΎΠΊΠ°). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ: Β«select /*+ JOIN_ORDER(@Β»select#2β³ twenty,ten) */ β¦.Β».
- Π‘Π½ΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΡΡΠΎΠ²Π΅Π½Ρ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡΠΈ ΡΡΡΡΠΊΡΡΡ Π² ΡΡΠ½ΠΊΡΠΈΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ JSON (ΡΠ±ΡΠ°Π½ Π»ΠΈΠΌΠΈΡ JSON_DEPTH_LIMIT, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π½Π΅Π΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π» Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ 32).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° TRIGGERED_UPDATE_COLUMNS Π² ΡΡ Π΅ΠΌΠ΅ INFORMATION_SCHEMA (INFORMATION_SCHEMA.TRIGGERED_UPDATE_COLUMNS), ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠ°Ρ ΡΡΠΎΠ»Π±ΡΡ, ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΈ ΡΡΠΈΠ³Π³Π΅ΡΠ°.
- Π ΡΠ°Π±Π»ΠΈΡΠ΅ PARAMETERS Π² ΡΡ Π΅ΠΌΠ΅ INFORMATION_SCHEMA ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΡΠΎΠ»Π±Π΅Ρ PARAMETER_DEFAULT, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Ρ ΡΠ°Π½ΠΈΠΌΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡ.
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Β«CREATE GLOBAL TEMPORARY TABLEΒ» Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°Π±Π»ΠΈΡ. ΠΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΡ ΡΠ΄Π°Π»ΡΡΡΡΡ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π°Π½ΡΠ° ΠΈ Π²ΠΈΠ΄Π½Ρ Π²ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ, Π½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π΄Π°Π½Π½ΡΠ΅, ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΡΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
- Π ΡΠ΅ΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° ΡΠ»ΡΡΡΠ΅Π½Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΌΠ΅ΠΆΡ ΡΠ°Π±Π»ΠΈΡΠ°ΠΌΠΈ, ΠΈΠΌΠ΅ΡΡΠΈΠΌΠΈ ΡΠ°Π·Π½ΡΡ ΡΡΡΡΠΊΡΡΡΡ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru

