Пасля года распрацоўкі і шасці папярэдніх выпускаў першы стабільны рэліз новай галіны СКБД , у рамках якой развіваецца адгалінаванне ад MySQL, якое захоўвае зваротную сумяшчальнасць і інтэграцыяй дадатковых рухавічкоў захоўвання і пашыраных магчымасцяў. Падтрымка новага адгалінавання будзе ажыццяўляцца 5 гадоў, да чэрвеня 2024 года.
Развіццё MariaDB курыруе незалежная арганізацыя MariaDB Foundation у адпаведнасці з цалкам адкрытым і празрыстым працэсам распрацоўкі, якія не залежаць ад асобных вендараў. MariaDB пастаўляецца замест MySQL у шматлікіх дыстрыбутывах Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) і ўкаранёны ў такіх буйных праектах, як , и .
ключавыя :
- У склад уключана тэхналогія сінхроннай multi-master рэплікацыі , якая дазваляе ўжываць тапалогію active-active multi-master, якая дапускае чытанне і запіс для любога вузла. Пры сінхроннай рэплікацыі ўсе вузлы заўсёды змяшчаюць актуальныя дадзеныя, г.зн. гарантуецца адсутнасць страчаных транзакцый, бо транзакцыя фіксуецца толькі пасля распаўсюджвання дадзеных па ўсіх вузлах. Рэплікацыя выконваецца ў паралельным рэжыме, на ўзроўні радкоў, з перадачай толькі інфармацыі аб зменах;
- У Unix-падобных сістэмах па змаўчанні задзейнічаны плягін аўтэнтыфікацыі , які дазваляе выкарыстоўваць прысутныя ў сістэме ўліковыя запісы для падлучэння да СКБД пры дапамозе лакальнага unix-сокета;
- Дададзена прызначэння часу жыцця пароля карыстальніка, пасля заканчэння якога пароль пазначаецца пратэрмінаваным. Для задання тэрміну дзеяння пароля ў аперацыях "CREATE USER" і "ALTER USER" дададзены выраз "PASSWORD EXPIRE INTERVAL N DAY";
- Дададзена падтрымка карыстальнікаў СКБД праз выраз "ACCOUNT LOCK" у аперацыях "CREATE USER" і "ALTER USER";
- Істотна паскорана выкананне праверкі прывілеяў у канфігурацыях з вялікай колькасцю карыстальнікаў або правілаў доступу;
- выкарыстанне табліц mysql.user і mysql.host. Для захоўвання ўліковых запісаў і глабальных прывілеяў зараз ужываецца табліца mysql.global_priv;
- В аўтэнтыфікацыі падтрымка выраза "SET PASSWORD";
- магчымасць выкарыстання больш аднаго плагіна аўтэнтыфікацыі для кожнага ўліковага запісу, што можа быць карысным для паступовага пераводу карыстальнікаў на плагін . Пры стварэнні карыстальніка root@localhost скрыптам mysql_install_db па змаўчанні зараз уключаецца два плагіна аўтэнтыфікацыі - unix_socket і mysql_native_password;
- У сховішчы InnoDB рэалізавана аперацыя імгненнага выдалення слупкоў (ALTER TABLE … DROP COLUMN … ALGORITHM = INSTANT) і змены парадку прытрымлівання слупкоў. Скарочаны аб'ём пачатковага лога адкату аперацый (redo log). Дададзена падтрымка ратацыі ключоў для innodb_encrypt_log. Рэалізаваны алгарытм праверкі кантрольных сум
innodb_checksum_algorithm=full_crc32. Забяспечана імгненнае пашырэнне тыпу VARCHAR і змена кадоўкі тэксту для непраіндэксаваных слупкоў; - Удасканалены аптымізатар. Дададзена магчымасць трасіроўкі аптымізатара, якая ўключаецца праз сістэмную зменную . Па змаўчанні вядзенне статыстыкі, незалежнай ад рухавічкоў захоўвання.
З'явілася два новых рэжыму use_stat_tables - COMPLEMENTARY_FOR_QUERIES і PREFERABLY_FOR_QUERIES. Уключаны рэжым optimize_join_buffer_size. Дададзены новыя rowid_filter і condition_pushdown_from_having; - Падтрымка сістэмных версіяваных табліц, у якіх не толькі захоўваецца актуальны зрэз даных, але захоўваецца інфармацыя і пра ўсе раней унесеныя змены, пашырана з дыяпазонамі часу;
- Дададзена новая каманда "FLUSH SSL" для паўторнай загрузкі SSL-сертыфікатаў без перазапуску сервера;
- У аперацыі "INSTALL PLUGIN", "UNINSTALL PLUGIN" і "UNINSTALL SONAME" дададзена падтрымка выразаў "IF NOT EXISTS" і "IF EXISTS";
- Прапанаваны ўстойлівыя да краху сістэмныя табліцы, для захоўвання якіх прымяняецца рухавічок. ;
- Ажыццёўлены пераход на выкарыстанне стандарту C++11 (задзейнічаны атамарныя аперацыі);
- Істотна павялічана прадукцыйнасць уласцівасцяў лакалі "Collation" для Unicode, якія дазваляюць задаваць правілы сартавання і метады супастаўлення з улікам сэнсу сімвалаў;
- убудова для вызначэння ўласных тыпаў палёў;
- Дададзена падтрымка аконных (User-Defined Functions);
- У аперацыі "FLUSH TABLES" рэжым "BACKUP LOCK", які можна выкарыстоўваць падчас рэзервовага капіявання файлаў БД;
- падтрымка серверных каманд, якія пачынаюцца з імя mariadb, альтэрнатыўных камандам, якія пачынаюцца з «mysql» (напрыклад, mariadump замест mysqldump).
Крыніца: opennet.ru
