MariaDB
 sql >> Database >  >> RDS >> MariaDB

Cosa c'è di nuovo in MariaDB Server 10.5?

MariaDB Server 10.5 è una versione fresca, nuova e stabile di MariaDB rilasciata il 24 giugno 2020. Diamo un'occhiata alle funzionalità che ci porterà.

Più privilegi granulari

Con MariaDB 10.5 sono in arrivo alcune modifiche riguardanti i privilegi. Principalmente, il privilegio SUPER è stato suddiviso in diversi nuovi privilegi che consentono di impostare un controllo più granulare su quali azioni sono consentite per determinati utenti e quali no. Di seguito è riportato l'elenco dei nuovi privilegi disponibili in MariaDB 10.5:

  • AMMINISTRATORE BINLOG
  • RIPRODUZIONE BINLOG
  • AMMINISTRATORE DELLA CONNESSIONE
  • AMMINISTRATORE FEDERATO
  • ADMIN_SOLO LETTURA
  • AMMINISTRATORE MASTER REPLICAZIONE
  • AMMINISTRATORE SLAVE REPLICAZIONE
  • IMPOSTA UTENTE

Miglioramenti delle prestazioni di InnoDB

MariaDB 10.5 include un elenco di miglioramenti delle prestazioni per InnoDB. Ciò che è importante sapere è che MariaDB 10.5 ha incorporato InnoDB da MariaDB 10.4. Ci saranno modifiche e miglioramenti delle prestazioni, ma il nucleo di InnoDB è lo stesso di MariaDB 10.4. Questo è molto interessante per vedere come porterà il percorso scelto da MariaDB in termini di prestazioni. Da un lato, attenersi alla vecchia versione consente cicli di rilascio più rapidi per MariaDB:il porting di InnoDB completamente nuovo su MariaDB sarebbe una bella sfida e, siamo onesti, potrebbe non essere davvero fattibile da realizzare. Tieni presente che MariaDB diventa sempre più incompatibile con l'upstream. È passato un po' di tempo dall'ultima build in cui potevi semplicemente scambiare i binari e tutto avrebbe funzionato senza problemi.

MariaDB ha sviluppato il suo set di funzionalità come la crittografia o la compressione, rendendo tali implementazioni non compatibili. D'altra parte, il nuovo InnoDB ha mostrato prestazioni significativamente migliori rispetto a MariaDB 10.4. Molte righe di codice sono state scritte (e molte righe di codice sono state rimosse) per renderlo più scalabile rispetto alla versione precedente. Sarà molto interessante vedere se MariaDB 10.5 sarà in grado di superare i suoi concorrenti.

Non entreremo nei dettagli poiché questo è ciò che puoi trovare sul sito Web di MariaDB, vorremmo menzionare alcune delle modifiche. I registri di ripristino di InnoDB hanno visto alcuni lavori che li hanno resi più efficienti. Anche il pool di buffer InnoDB è stato migliorato nella misura in cui l'opzione per creare più pool di buffer è stata rimossa in quanto non più necessaria:i problemi di prestazioni che mirava a risolvere erano già stati risolti in 10.5, rendendo così questa opzione non necessaria.

Ciò che è anche importante tenere a mente è che InnoDB nella 10.5 sarà, a causa delle modifiche, incompatibile con InnoDB nella 10.4. L'aggiornamento sarà di sola andata, dovresti pianificare il tuo processo di aggiornamento di conseguenza.

Supporto GTID completo per Galera Cluster

Galera Cluster arriverà in MariaDB 10.5 con pieno supporto GTID. Ciò dovrebbe rendere la combinazione di Galera Cluster e la replica asincrona più fluida e meno problematica.

Più metadati per replica e log binari

Parlando di replica, MariaDB 10.5 ha migliorato i metadati dei log binari. Viene fornito con ulteriori informazioni sui dati da replicare:

  • Segnaletica delle colonne numeriche
  • Set di caratteri di colonne di caratteri e colonne binarie
  • Nome colonna
  • Valore stringa delle colonne SET
  • Valore stringa di colonne ENUM
  • Chiave primaria
  • Set di caratteri di colonne SET e colonne ENUM
  • Tipo di geometria

Questo dovrebbe aiutare a evitare problemi di replica se sono presenti schemi diversi sul master e sullo slave.

Sintassi

Diverse modifiche alla sintassi SQL sono state introdotte in MariaDB 10.5. INTERSECT ci consente di scrivere una query che risulterà in righe restituite da due istruzioni SELECT. In MariaDB è stato aggiunto 10.5 INTERSECT ALL, che consente di restituire un set di risultati con valori duplicati. Allo stesso modo, EXCEPT è stato migliorato per consentire EXCEPT ALL.

Un paio di modifiche sono state apportate alla sintassi ALTER:ora puoi rinominare le colonne con ALTER TABLE … RENAME COLUMN. È anche possibile rinominare l'indice utilizzando la sintassi ALTER TABLE … RENAME KEY. Ciò che è piuttosto importante, sia ALTER TABLE che RENAME TABLE hanno ricevuto un supporto per IF EXISTS, sarà sicuramente di aiuto in termini di gestione della replica.

Aggiornamenti dello schema delle prestazioni per corrispondere a MySQL 5.7 

Le tabelle dello schema delle prestazioni sono state aggiornate in modo che siano alla pari con lo schema delle prestazioni di MySQL 5.7. Ciò significa modifiche alla strumentazione relativa alla memoria, al blocco dei metadati, alle istruzioni preparate, alle procedure archiviate, al blocco, alle transazioni e alle variabili utente.

Binari denominati mariadb

Ultimo ma non meno importante, i binari sono stati cambiati da 'mysql' a 'mariadb'. La vecchia convenzione di denominazione, tuttavia, può ancora essere utilizzata per mantenere la compatibilità con gli script e gli strumenti esistenti.

Inoltre, sono state introdotte molte altre modifiche. Matrice JSON e funzione di aggregazione di oggetti, strumentazione migliorata per il pool di connessioni, miglioramenti in Query Optimizer o migrazione alla nuova versione della libreria per le espressioni regolari. È stata introdotta anche l'integrazione con S3:puoi leggere i dati dai bucket S3 da MariaDB 10.5.

Non vediamo l'ora di vedere come apparirà questa nuova versione di MariaDB negli ambienti di produzione. Se sei interessato a provare, le istruzioni per la migrazione sono disponibili sul sito web di MariaDB