MariaDB 12.0 este acum disponibilă

MariaDB 12.0.2 a fost lansată, marcând-o ca prima versiune stabilă a ramurii 12.0. Ramura MariaDB 12.0 este clasificată ca o versiune rulantă, continuă dezvoltarea graduală a funcționalității și înlocuiește ramura MariaDB 11.8. MariaDB 12.1.1, care are statutul de versiune candidată, a fost publicată în același timp. Ramura MariaDB 12.0 va fi suportată până la formarea versiunii 12.1.2.

Proiectul MariaDB dezvoltă o furcă din MySQL care menține compatibilitatea cu versiunea anterioară și include integrarea unor motoare de stocare suplimentare și capabilități avansate. Dezvoltarea MariaDB este supravegheată de Fundația MariaDB independentă, în urma unui proces de dezvoltare deschis și transparent, care este independent de furnizorii individuali. MariaDB este furnizat ca înlocuitor pentru MySQL în multe distribuții Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) și a fost implementat în proiecte atât de mari precum Wikipedia, Google Cloud SQL și Nimbuzz.

Modificările din ramura MariaDB 12.0 includ:

  • Adăugat suport pentru chei SSL protejate prin parolă. Parolă pentru deblocare Certificate SSL poate fi setată prin intermediul variabilei ssl_passphrase sau manual la pornirea serverului.
  • A fost adăugată expresia „SET SESSION AUTHORIZATION” pentru a efectua o acțiune sub un alt utilizator la setarea privilegiilor corespunzătoare (expresia poate fi considerată un analog al „sudo” pentru SGBD).
  • A fost adăugat suport pentru hash-uri SHA-2 la pluginul file_key_management.so.
  • S-a adăugat suport pentru variabile cursor slabe de tipul predefinit SYS_REFCURSOR, permițând returnarea unui cursor din proceduri stocate (în parametrul OUT) sau din funcții (în instrucțiunea RETURN). A fost adăugată variabila de sistem „max_open_cursors” pentru a limita numărul maxim de cursoare deschise simultan.
  • Tipul TO_CHAR acceptă acum formatul FM (Fill Mode) pentru a evita completarea suplimentară. De exemplu, interogarea „SELECT CONCAT('/', TO_CHAR('2020-01-06 10:11:12', 'FMDAY'), '/');” va returna „/Monday/” în loc de „/Monday /”.
  • Utilitarul mariadb-check și expresia CHECK TABLE au fost actualizate pentru a accepta tabele din motorul SEQUENCE.
  • Optimizatorul acceptă acum opțiuni (indicii) care afectează construcția planului de optimizare: QB_NAME, NO_RANGE_OPTIMIZATION, NO_ICP, MRR, NO_MRR, BKA, NO_BKA, BNL, NO_BNL, SEMIJOIN, SUBQUERY, JOIN_FIXED_ORDER, JOIN_ORDER, JOIN_PREFIX, JOIN_SUFFIX și MAX_EXECUTION_TIME. Opțiunile sunt înlocuite în interogare într-un format compatibil cu MySQL, de exemplu: SELECT /*+ BKA(t1) NO_BKA(t2) */ * FROM t1 INNER JOIN t2 WHERE …; SELECT /*+ MAX_EXECUTION_TIME(1000) */ * FROM t1 INNER JOIN t2 WHERE …;
  • S-a adăugat suport pentru noile funcții GIS (Sistem Informațional Geografic): ST_Validate, MBRCoveredBy, ST_Simplif, ST_GeoHash, ST_LatFromGeoHash, ST_LongFromGeoHash, ST_PointFromGeoHash, ST_IsValid, ST_Collect.
  • S-a adăugat suport pentru declanșatoarele care se declanșează la mai multe evenimente. Instrucțiunea CREATE TRIGGER poate acum lista evenimentele care îi corespund folosind sintaxa „{ event [ OR … ] }”.
  • Pluginul Audit salvează acum informații despre porturile de rețea pentru conexiunile primite în jurnalul de audit (anterior era afișată doar gazda).
  • Utilitarul mariadb are o opțiune „--script-dir” pentru a specifica un director de căutare alternativ pentru scripturile rulate de comanda SOURCE.
  • Au fost eliminate variabilele big_tables, large_page_size și storage_engine, care erau anterior depreciate.

Sursa: opennet.ru