Aggiornamento di MariaDB cdmon

Aggiornamento di MariaDB cdmon

In cdmon stiamo aggiornando la versione di MariaDB nei nostri server, passando alla versione 10.11. Questo aggiornamento migliora le prestazioni e la sicurezza dei database, ma introduce anche alcuni cambiamenti che potrebbero influenzare determinate applicazioni o query.

L’aggiornamento verrà effettuato progressivamente su tutti i server cdmon. In un momento della notte potrebbe verificarsi un’interruzione di circa 15 minuti. Nella maggior parte dei casi non è necessario fare nulla. Tuttavia, se la tua applicazione o il tuo sito web utilizza database, ti consigliamo di verificarne il funzionamento dopo l’aggiornamento per assicurarti che tutto continui a funzionare correttamente.

Di seguito trovi un riepilogo delle principali modifiche e aggiornamenti introdotti da questa nuova versione di MariaDB 10.11. Questi cambiamenti possono influenzare la tua applicazione a seconda di come utilizzi il database.
 
1. Cambiamenti nell’archiviazione e nel formato dei dati
InnoDB
Il motore di archiviazione InnoDB ha subito alcune modifiche che possono influire sul comportamento delle tabelle e dei dati memorizzati:
  • Il formato dei file InnoDB ora è sempre Barracuda (prima poteva essere "Antelope").
  • La variabile innodb_large_prefix è stata eliminata, quindi le chiavi nelle tabelle InnoDB utilizzano sempre la lunghezza massima possibile.
  • L’opzione innodb_file_format è stata rimossa.
Nota: Se in precedenza utilizzavi il formato "Antelope" e le tue tabelle includevano righe lunghe o indici con prefissi grandi, potresti riscontrare differenze nello storage o nelle prestazioni. Anche se la maggior parte delle applicazioni non sarà influenzata, è consigliabile verificare le tabelle che potrebbero aver fatto affidamento sui limiti del formato precedente. Inoltre, se la tua applicazione tenta di inserire dati che violano le restrizioni di InnoDB, come chiavi duplicate o dati che superano la dimensione consentita, in precedenza poteva generare un avviso.

Timestamps e date (DATETIME)
I tipi di dati relativi a date e orari sono stati aggiornati per migliorare la precisione:
  • Ora le date includono millisecondi per impostazione predefinita.
  • Se la tua applicazione si aspetta date senza millisecondi, potrebbe essere necessario adattarla.
Nota: Se la tua applicazione confronta date e orari senza considerare i millisecondi, potresti riscontrare discrepanze. Ad esempio, una query che prima confrontava 2025-03-06 11:48:21 ora potrebbe restituire risultati diversi se i timestamp memorizzati includono millisecondi, come 2025-03-06 11:48:21.123

JSON
Le funzioni relative a JSON sono state migliorate per offrire maggiore flessibilità e correggere errori:
  • La funzione JSON_TABLE() ora consente nomi di colonna con caratteri speciali tra virgolette.
  • Sono stati corretti errori in JSON_VALID() e JSON_QUERY(), il che può influire sulle validazioni JSON nella tua applicazione.
Nota: Se la tua applicazione utilizza JSON_TABLE() per estrarre dati JSON e in precedenza evitavi nomi di colonna con caratteri speciali a causa di restrizioni, ora puoi usarli direttamente. Questo cambiamento facilita la manipolazione dei dati JSON con strutture più complesse.

2. Cambiamenti nell’esecuzione delle query SQL
ORDER BY e LIMIT
Sono state implementate ottimizzazioni nell’esecuzione delle query che utilizzano ORDER BY insieme a LIMIT:
  • Ottimizzazione migliorata: MariaDB ha migliorato l’ottimizzazione di ORDER BY ... LIMIT, il che può modificare l’ordine dei risultati se non viene utilizzata una clausola ORDER BY esplicita. Se le tue query dipendono da un ordine specifico, assicurati che includano sempre un ORDER BY definito.
Esempio: Se non viene specificato un ORDER BY, l’insieme dei risultati potrebbe variare tra esecuzioni a causa delle ottimizzazioni interne. Per garantire un ordine coerente è essenziale specificare la clausola ORDER BY, ad esempio: SELECT * FROM empleados ORDER BY fecha_contratacion DESC LIMIT 10;

Funzioni SQL
Alcune funzioni SQL sono state aggiornate per ampliare la compatibilità e correggere errori:
  • Le funzioni GREATEST() e LEAST() ora funzionano correttamente con date e orari (DATETIME e TIMESTAMP).
  • Sono stati corretti errori in funzioni come REPLACE()LOCATE(), e altre funzioni di stringa.
Esempio: Se hai due colonne di date e desideri ottenere la più recente per riga, puoi utilizzare: SELECT GREATEST(fecha_inicio, fecha_fin) AS fecha_mas_reciente FROM proyectos;
In precedenza questo poteva produrre risultati inattesi o errori, ma con l’aggiornamento la funzione gestisce correttamente questi tipi di dati.

GROUP BY
La valutazione delle condizioni nelle query che utilizzano GROUP BY è cambiata:
  • Le condizioni in HAVING ora vengono valutate prima dell’aggregazione.
  • Questo può modificare i risultati delle query che utilizzano GROUP BY.
Nota: È importante assicurarsi che la condizione in HAVING sia logica e coerente con i dati reali, poiché la valutazione prima del raggruppamento potrebbe filtrare i record prima del conteggio, alterando il risultato previsto.

Ti consigliamo di controllare le tue applicazioni ed eseguire test dopo l’aggiornamento per garantirne il corretto funzionamento. Se hai dubbi o hai bisogno di aiuto, il nostro team di supporto è disponibile per assisterti.

Per ottenere informazioni più dettagliate sull’aggiornamento da versioni precedenti, puoi consultare i seguenti link ufficiali di MariaDB:

Per maggiori informazioni puoi contattarci.
    • Related Articles

    • ConnectiLogs | Gestione utenti MariaDB degli host cdmon

      Lo strumento ConnectiLogs è progettato per offrire un accesso chiaro e semplice ai registri (log) degli hosting che hai creato nel tuo pannello di controllo. Da questa sezione puoi visualizzare e analizzare i registri del server tramite un pannello ...
    • Accesso e utilizzo del piano di hosting WordPress cdmon

      In questa guida mostriamo passo dopo passo come accedere alla gestione dell’hosting WordPress di cdmon dal nostro pannello di controllo. Accesso all’hosting Dati di accesso alle applicazioni Creazione del tuo sito web Gestire WordPress Uso dello ...
    • Come disattivare le e-mail automatiche di aggiornamento WordPress

      Con il plugin Manage Notification E-mails puoi gestire le notifiche che ricevi da WordPress. Tra queste, puoi disattivare le email relative agli aggiornamenti automatici di plugin e temi installati. Per prima cosa, accedi al tuo sito WordPress e vai ...
    • Come visualizzare gli avvisi di sicurezza

      Dal nostro pannello di controllo puoi accedere direttamente agli “Avvisi di Sicurezza” per monitorare le vulnerabilità rilevate sui tuoi hosting. Questa sezione ti fornisce un riepilogo dettagliato delle vulnerabilità più recenti che interessano i ...
    • Come agire se abbiamo iniezione di codice sul web

      Che cos’è un’iniezione di codice? Un’iniezione di codice o attacco virus al sito web è un’intrusione di dati o una negazione di accesso al sito. In questo tipo di attacchi si tenta di modificare file e valori propri del CMS e anche la struttura della ...