Rilascio stabile del DBMS MariaDB 10.6

Dopo un anno di sviluppo e tre versioni preliminari, è stata pubblicata la prima versione stabile della nuova serie del DBMS MariaDB 10.6, in cui si sviluppa un ramo di MySQL che mantiene la retrocompatibilità e si distingue per l’integrazione di motori di archiviazione aggiuntivi e funzioni avanzate. Il supporto per la nuova serie sarà fornito per 5 anni, fino a luglio 2026.

Lo sviluppo di MariaDB è curato dall’organizzazione indipendente MariaDB Foundation secondo un processo di sviluppo completamente aperto e trasparente, non dipendente da singoli produttori. MariaDB viene fornito al posto di MySQL in molte distribuzioni Linux (RHEL, SUSE, Fedora, openSUSE, Slackware, OpenMandriva, ROSA, Arch Linux, Debian) ed è implementato in grandi progetti come Wikipedia, Google Cloud SQL e Nimbuzz.

Miglioramenti chiave in MariaDB 10.6:

  • Garantita l'atomicità delle espressioni «CREATE TABLE|VIEW|SEQUENCE|TRIGGER», «ALTER TABLE|SEQUENCE», «RENAME TABLE|TABLES», «DROP TABLE|VIEW|VIEW|TRIGGER|DATABASE» (o l'espressione è completamente completata, oppure tutto ritorna allo stato originale). Nel caso di operazioni «DROP TABLE» che eliminano più tabelle contemporaneamente, l'atomicità è garantita a livello di singola tabella. L'obiettivo della modifica è garantire l'integrità in caso di crash server durante l'esecuzione dell'operazione. In precedenza, dopo un crash potevano rimanere tabelle temporanee e file, compromettere la sincronizzazione delle tabelle nei motori di archiviazione e nei file frm, rimanere non rinominate tabelle singole durante la rinomina di più tabelle contemporaneamente. L'integrità è garantita tramite la registrazione del ripristino dello stato, il cui percorso può essere definito tramite la nuova opzione «—log-ddl-recovery=file» (per impostazione predefinita ddl-recovery.log).
  • Implementata la costruzione definita nello standard SQL 2008 «SELECT … OFFSET … FETCH», che consente di restituire un numero specifico di righe, a partire da un determinato offset, con la possibilità di utilizzare il parametro «WITH TIES» per allegare un ulteriore valore seguente. Ad esempio, l'espressione «SELECT i FROM t1 ORDER BY i ASC OFFSET 1 ROWS FETCH FIRST 3 ROWS WITH TIES» si distingue dalla costruzione «SELECT i FROM t1 ORDER BY i ASC LIMIT 3 OFFSET 1» per l'output di un ulteriore elemento, che segue in coda (anziché 3, verranno restituite 4 righe).
  • Per il motore InnoDB è stato implementato il sintassi «SELECT … SKIP LOCKED», che consente di escludere righe per le quali non è possibile impostare un blocco («LOCK IN SHARE MODE» o «FOR UPDATE»).
  • È stata implementata la possibilità di ignorare gli indici (in MySQL 8, questa funzionalità è chiamata "indici invisibili"). L'indicazione dell'indice da ignorare avviene tramite il flag IGNORED nell'istruzione "ALTER TABLE", dopo la quale l'indice rimane visibile e aggiornabile, ma non è utilizzato dall'ottimizzatore.
  • È stata aggiunta la funzione JSON_TABLE(), destinata a convertire i dati JSON in una forma relazionale. Ad esempio, un documento JSON può essere trasformato per essere utilizzato nel contesto di una tabella, che può essere specificata all'interno del blocco FROM nell'istruzione SELECT.
  • Migliorata la compatibilità con i DBMS Oracle: è stato aggiunto il supporto per le sottoquery anonime all'interno del blocco FROM. È stata implementata la costruzione MINUS (equivalente di EXCEPT). Sono state aggiunte le funzioni ADD_MONTHS(), TO_CHAR(), SYS_GUID() e ROWNUM().
  • Nel motore InnoDB è stata accelerata l'inserzione in tabelle vuote. Il formato delle righe COMPRESSED per impostazione predefinita è stato cambiato in modalità di sola lettura. Lo schema SYS_TABLESPACES ha sostituito SYS_DATAFILES e riflette direttamente lo stato nel filesystem. È stato garantito il supporto per la scrittura ritardata nello spazio delle tabelle temporanee. È stata interrotta la supporto per il vecchio algoritmo di checksum, mantenuto per compatibilità con MariaDB 5.5.
  • Nel sistema di replicazione, la dimensione del parametro master_host è stata aumentata da 60 a 255 caratteri, mentre master_user è passato a 128. È stata aggiunta la variabile binlog_expire_logs_seconds per configurare il tempo di scadenza del log binario in secondi (in precedenza il tempo di scadenza era determinato solo in giorni tramite la variabile expire_logs_days).
  • Nel meccanismo di replicazione multi-master sincrona Galera è stata implementata la variabile wsrep_mode per configurare i parametri dell'API WSREP (Write Set REPlication). È stato consentito il passaggio di Galera da comunicazioni non cifrate all'uso di TLS senza arrestare il cluster.
  • È stato realizzato lo schema sys-schema, in cui è stata raccolta una collezione di viste, funzioni e procedure per l'analisi delle operazioni con il database.
  • Sono state aggiunte tabelle di servizio per l'analisi delle prestazioni della replicazione.
  • Nel set di tabelle informative sono state aggiunte le viste INFORMATION_SCHEMA.KEYWORDS e INFORMATION_SCHEMA.SQL_FUNCTIONS, che visualizzano l'elenco delle parole chiave e delle funzioni disponibili.
  • Sono stati rimossi gli archivi TokuDB e CassandraSE.
  • La codifica utf8 è stata convertita da una rappresentazione a quattro byte utf8mb4 (U+0000..U+10FFFF) a una a tre byte utf8mb3 (che copre l'intervallo Unicode U+0000..U+FFFF).
  • È stato aggiunto il supporto per l'attivazione tramite socket in systemd.
  • Nel plugin GSSAPI è stato aggiunto il supporto per i nomi dei gruppi Active Directory e SID.
  • È stata aggiunta la verifica della presenza del file di configurazione $MARIADB_HOME/my.cnf oltre a $MYSQL_HOME/my.cnf.
  • Sono state implementate nuove variabili di sistema binlog_expire_logs_seconds, innodb_deadlock_report, innodb_read_only_compressed, wsrep_mode e Innodb_buffer_pool_pages_lru_freed.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster