Come aggiornare e migrare MySQL/MariaDB in ServBay
Panoramica
Durante lo sviluppo locale, potresti dover cambiare la versione predefinita di MySQL o MariaDB nell'ambiente ServBay per soddisfare i requisiti del progetto o per usufruire delle funzionalità più recenti e degli aggiornamenti di sicurezza. Questo documento fornisce una guida chiara e dettagliata per eseguire questa operazione in sicurezza, inclusi i passaggi fondamentali di backup e ripristino dati.
Scenari applicativi
- Aggiornare all’ultima versione: Accedere a nuove funzionalità, miglioramenti delle prestazioni e correzioni di sicurezza.
- Testare la compatibilità del progetto: Verificare come la tua applicazione si comporta con diverse versioni del database.
- Soddisfare le dipendenze di progetto: Alcuni progetti potrebbero richiedere specifiche versioni del database.
Prerequisiti
- ServBay installato e in esecuzione.
- Conoscenza di base dell’utilizzo del terminale da riga di comando.
- Conoscenza della password dell’utente
root
del database attuale. - Spazio su disco sufficiente per installare la nuova versione e salvare il backup del database.
Passaggi operativi
Di seguito spieghiamo in dettaglio la procedura di switch, prendendo come esempio la migrazione da MariaDB 10.11 a MariaDB 11.3. Per MySQL i passaggi sono essenzialmente gli stessi.
1. Effettuare il backup del database della vecchia versione
Prima di procedere con qualsiasi cambio di versione, si raccomanda vivamente di eseguire un backup completo di tutti i dati del database attuale. Questo previene la perdita di dati e permette il ripristino in caso di problemi di compatibilità.
La soluzione standard per il backup è lo strumento mysqldump
. Apri il terminale ed esegui il comando:
bash
mysqldump -uroot -p --all-databases --opt > mariadb_backup.sql
1
-u root
: specifica la connessione tramite l’utenteroot
.-p
: richiede l’inserimento della password dell’utenteroot
.--all-databases
: effettua il backup di tutti i database.--opt
: include varie opzioni ottimali come--add-drop-table
,--add-locks
,--create-command
,--disable-keys
,--extended-insert
,--lock-tables
,--quick
,--set-charset
ecc., per ottenere un backup efficiente e portabile.> mariadb_backup.sql
: salva il backup nel filemariadb_backup.sql
nella cartella corrente (di solito la home dell’utente,~
).
Dopo aver dato il comando, inserisci la password dell’utente root
di MariaDB quando richiesto. Attendi il completamento del comando: durante il processo non ci saranno molte informazioni visualizzate, il prompt ricomparirà al termine. La dimensione del file di backup dipenderà dal volume dei tuoi dati. Verifica che il file mariadb_backup.sql
sia stato creato e che non sia vuoto.
2. Installare la nuova versione desiderata
Apri l’interfaccia dell'applicazione ServBay. Vai nella scheda Pacchetti (Packages). Nel gruppo Database individua MariaDB o MySQL, scegli la nuova versione che vuoi utilizzare (ad esempio MariaDB 11.3) e premi il pulsante di installazione.
Attendi che ServBay completi il download e l’installazione della nuova versione.
3. Disabilitare la vecchia versione del database
Dopo aver installato la nuova versione, ritorna nella scheda Pacchetti (Packages) di ServBay. Trova il database della vecchia versione attualmente in esecuzione (es. MariaDB 10.11). Clicca sull’indicatore di stato accanto al nome (solitamente un cerchio verde) per disabilitarlo: vedrai l’indicatore diventare grigio.
4. Abilitare la nuova versione del database
Disattivata la versione precedente, individua la nuova versione che hai appena installato (ad esempio MariaDB 11.3). Clicca sul suo indicatore di stato per attivarla: l’indicatore diventa verde, segnalando che il nuovo database è stato avviato correttamente.
5. Impostare la nuova versione come predefinita
Semplicemente abilitare la nuova versione e disattivare la vecchia non basta per renderla predefinita nel sistema. Devi selezionare esplicitamente la versione predefinita dalle impostazioni di ServBay.
Vai nel pannello Impostazioni (Settings) di ServBay. Tra le impostazioni relative ai database, cerca l’opzione della versione predefinita per MySQL o MariaDB. Dal menu a tendina seleziona la nuova versione abilitata (ad esempio MariaDB 11.3).
Clicca sul pulsante Applica (Apply) in fondo al pannello per salvare le modifiche.
6. Verificare che la versione predefinita sia impostata correttamente
Ritorna alla scheda Pacchetti (Packages) di ServBay. Dovresti vedere che accanto alla nuova versione (es. MariaDB 11.3) è presente un chiaro indicatore che mostra che è la versione predefinita in uso.
7. Verificare dal terminale la versione predefinita
Apri il terminale ed esegui il comando seguente per accertarti che il sistema stia utilizzando la versione di database appena impostata come predefinita:
bash
mysql -V
1
L’output dovrebbe riportare le informazioni sulla nuova versione, ad esempio mysql Ver 11.3.2-MariaDB ...
.
8. Ripristinare il backup del database
Ora puoi ripristinare i dati salvati nel backup all’interno della nuova versione del database. Usa questo comando dal terminale:
bash
mysql -uroot -p < mariadb_backup.sql
1
-u root
: connessione come utenteroot
.-p
: richiesta della password perroot
.< mariadb_backup.sql
: importa nel clientmysql
il contenuto del file di backup, eseguendone così il ripristino.
Dopo il comando inserisci la password dell’utente root
della nuova versione del database (generalmente uguale a quella precedente, salvo cambiamenti fatti dopo la prima installazione). L’operazione potrebbe richiedere tempo in base alla dimensione del backup.
Attenzione: Durante il ripristino potrebbero comparire avvisi o errori, soprattutto se ci sono differenze rilevanti di compatibilità tra le due versioni oppure se il backup contiene funzioni o configurazioni specifiche della vecchia versione (come alcuni storage engine, funzioni personalizzate o la clausola DEFINER
). Per la maggior parte delle applicazioni web comuni, questi avvisi sono trascurabili, ma in ambienti di produzione o in progetti complessi è consigliato analizzarli attentamente e risolverli se necessario.
9. Verifica del completo ripristino del database
A fine procedura accedi al database per controllare che i dati siano stati ripristinati correttamente:
bash
mysql -uroot -p
1
Dopo aver inserito la password entrerai nel client da riga di comando di MariaDB/MySQL. Visualizza l’elenco dei database con:
sql
SHOW DATABASES;
1
Puoi quindi verificare database e tabelle specifiche, eseguire alcune query e assicurarti che tutto sia stato recuperato correttamente e che le applicazioni accedano al database senza problemi.
Note importanti
- Compatibilità dei dati: Sebbene MySQL/MariaDB cerchino di mantenere la compatibilità, potrebbero esserci modifiche incompatibili tra versioni principali (ad esempio dalla 5.7 alla 8.0, o da MariaDB 10.x a 11.x). Consulta sempre la documentazione ufficiale per dettagli sulle compatibilità tra versioni.
- File di configurazione: ServBay mantiene file di configurazione separati (come
my.cnf
omy.ini
) per ogni versione del database. Se hai modificato il file della vecchia versione, dovrai trasferire o integrare manualmente queste modifiche nel file della nuova versione. Di solito questi file si trovano in una cartella dedicata dentro l’installazione di ServBay (es./Applications/ServBay/etc/mysql/numero-versione/my.cnf
). - Prestazioni: Le nuove versioni del database possono avere configurazioni predefinite, ottimizzazioni interne o comportamenti differenti. Dopo il cambio versione, esegui test di performance sull’applicazione e, se necessario, adatta le impostazioni.
- Porte di ascolto: Di default, tutte le versioni database in ServBay ascoltano sulla porta standard (ad es. 3306); il cambio versione predefinita non modifica la porta. Vuoi far funzionare più versioni contemporaneamente su porte diverse? Modifica manualmente i file di configurazione.
FAQ — Domande Frequenti
- D: Non riesco ad avviare la nuova versione appena installata, che fare?
- R: Controlla l’indicatore di stato nel pannello Pacchetti di ServBay e consulta i file di log. Solitamente i log si trovano in
var/log/mysql
ovar/log/mariadb
nella cartella di ServBay; qui puoi individuare cause come errori di configurazione, conflitti sulle porte o permessi insufficienti.
- R: Controlla l’indicatore di stato nel pannello Pacchetti di ServBay e consulta i file di log. Solitamente i log si trovano in
- D: Cosa fare se durante il ripristino del database compaiono errori?
- R: Leggi attentamente le segnalazioni. Errori frequenti includono caratteri non validi (puoi usare l’opzione
--default-character-set=utf8mb4
col comandomysqldump
), problemi legati a permessi suDEFINER
(puoi sostituire in blocco le clausoleDEFINER
nel file di backup), oppure file di backup corrotti. Per database di grandi dimensioni valuta strumenti alternativi comemydumper
/myloader
per backup e ripristino paralleli.
- R: Leggi attentamente le segnalazioni. Errori frequenti includono caratteri non validi (puoi usare l’opzione
- D: È possibile cambiare versione senza backup e ripristino?
- R: Sconsigliato, soprattutto per upgrade tra versioni principali. Passare direttamente potrebbe causare incompatibilità nei dati, corruzione o perdita delle informazioni. Il modo più sicuro è sempre effettuare backup e ripristino.
- D: Dopo il cambio versione il mio sito/app non riesce più a collegarsi al database, cosa controllare?
- R: Assicurati che il nuovo database sia regolarmente avviato e impostato come predefinito in ServBay. Verifica che le impostazioni di connessione (host, solitamente
127.0.0.1
olocalhost
, porta predefinita 3306, username e password) siano corrette anche lato applicazione.
- R: Assicurati che il nuovo database sia regolarmente avviato e impostato come predefinito in ServBay. Verifica che le impostazioni di connessione (host, solitamente
Conclusione
Seguendo i passaggi descritti sopra, puoi cambiare la versione predefinita di MySQL o MariaDB in ServBay in modo sicuro e senza intoppi. I punti fondamentali sono: backup dei dati, installazione e attivazione della nuova versione, impostazione come predefinita nelle impostazioni di ServBay e ripristino finale dei dati. Non trascurare l’importanza del backup e verifica sempre l’integrità dei dati e la funzionalità delle tue applicazioni dopo il passaggio di versione.