Se state pensando di migrare da MySQL a MariaDB, avete tutte le ragioni per farlo. Essendo una delle prime piattaforme di sistemi di gestione di database (Database Management System, o DBMS), MySQL ha dominato il settore per molto tempo e continua ad avere una notevole rilevanza.

Tuttavia, le aziende lo stanno lentamente abbandonando a causa della sua lentezza di elaborazione e dell’inefficienza nel gestire dati complessi. Molte di queste organizzazioni si rivolgono, invece, a MariaDB.

MariaDB è un DBMS più recente e leggero che offre prestazioni migliori, funzioni più all’avanguardia e una maggiore capacità di gestire insiemi di dati complessi. Rispetto a MySQL, MariaDB vanta anche una community più vivace che mantiene aggiornato il suo repository pubblico e apporta modifiche innovative.

Questo articolo vi guiderà nella migrazione dei dati da MySQL a MariaDB.

Come cambiare database da MySQL a MariaDB

La migrazione da MySQL a MariaDB è incredibilmente facile. L’intero processo si può suddividere in due fasi principali:

  1. Eseguire il backup del proprio database in MySQL scaricandolo in un file SQL.
  2. Accedere al server MariaDB e caricare il file di backup per creare il database.

MariaDB è compatibile con MySQL, quindi non avrete problemi a migrare il database.

Dopo aver migrato il database da MySQL a MariaDB e aver verificato che le tabelle siano complete, potrete aggiornare il vostro sito web per prelevare i dati da MariaDB anziché da MySQL.

Requisiti

Dato che state cercando di migrare da MySQL a MariaDB, dovreste già avere un database MySQL contenente i dati che volete spostare.

Naturalmente, dovreste anche avere una copia di MariaDB. Anche se non è obbligatorio, questo tutorial utilizza phpMyAdmin, uno strumento visuale open-source che permette di gestire i database MySQL e MariaDB utilizzando un browser web.

Strumento di gestione phpMyAdmin
phpMyAdmin

Per accedere a phpMyAdmin, installate WAMPServer o XAMPP. Questi pacchetti server sono preinstallati con phpMyAdmin, MySQL e MariaDB – tutto ciò di cui avrete bisogno per seguire questo tutorial. (XAMPP può funzionare su Windows, macOS e Linux).

Se non avete phpMyAdmin, non preoccupatevi. L’articolo include i comandi che potrete eseguire sul terminale per replicare le stesse azioni su MySQL e MariaDB.

Fuori MySQL

Iniziate creando un backup del database di destinazione in MySQL. Avviate il server MySQL e accedete al database MySQL utilizzando phpMyAdmin. Da WAMP o XAMPP, potete accedere a phpMyAdmin navigando su http://localhost/phpMyAdmin/.

Pagina di accesso a phpMyAdmin per il server MySQL
Pagina di accesso a phpMyAdmin

Una volta entrati nell’ambiente MySQL, cliccate sul database di cui volete fare il backup. Questo esempio esporta un database di WordPress, che contiene le tabelle tipiche di WordPress.

Il database di WordPress su phpMyAdmin utilizzando MySQL
Il database di WordPress su phpMyAdmin

Cliccate sulla scheda Export sopra le tabelle e scegliete il formato SQL. Lo importerete in MariaDB più avanti.

Esportare il database di WordPress in formato SQL
Esportare il database di WordPress in formato SQL

Cliccate su Go per scaricare il backup del database sul vostro computer locale come file SQL. In alternativa, se non avete phpMyAdmin o preferite usare i comandi, usate il seguente comando per scaricare il database in un file SQL. Sostituite your-name e your-pass con il nome utente e la password del vostro database.

 $ mysqldump --user=your-name --password="your-pass" wordpress > wordpress.sql

In questo caso, il comando crea un file di backup chiamato wordpress.sql contenente il codice SQL del database di WordPress.

Infine, disinstallate MySQL.

Dentro MariaDB

Per prima cosa, assicuratevi di avere MariaDB installato sul vostro computer locale. Non dovrete farlo manualmente se utilizzate WAMP, XAMPP o distribuzioni simili che hanno MariaDB preinstallato.

Ora è il momento di caricare il file di backup MySQL in MariaDB. Arrestate il server MySQL dal pannello di amministrazione del server. Uscite dal server MySQL e accedete al server MariaDB (basta passare da MySQL a MariaDB quando si accede a phpMyAdmin).

Pagina di login a phpMyAdmin per il server MariaDB
Pagina di login a phpMyAdmin per il server MariaDB

Nel pannello di amministrazione, create un nuovo database. In phpMyAdmin potete farlo cliccando su New, assegnando un nome al database e cliccando su Create.

Database WordPress su phpMyAdmin con MariaDB
Database WordPress su phpMyAdmin con MariaDB

Cliccate sul nuovo database appena creato, poi cliccate sulla scheda Import in alto e importate il file di backup cliccando sull’opzione Choose file o Browse.

Importare il database di WordPress
Importare il database di WordPress

Cliccate su Go per caricare il file. Il processo potrebbe richiedere un po’ di tempo e, se tutto va bene, phpMyAdmin vi informerà che la query è andata a buon fine.

Messaggio di successo della query
Messaggio di successo

Se invece volete utilizzare la riga di comando, seguite questi passaggi.

Accedete al server MariaDB e create il nuovo database come segue:

$ mysql --user=your-name --password="your-pass" -e  "CREATE DATABASE wordpress";

Caricate il file di backup in MariaDB.

$ mysql --user=your-name --password="your-pass" --database=wordpress < wordpress.sql

Una volta importati con successo i file da MySQL a MariaDB, il cursore diventerà nuovamente attivo.

Come aggiornare il sito WordPress

Dopo il passaggio da MySQL a MariaDB, è il momento di far sì che il sito WordPress inizi a utilizzare il nuovo database. Per farlo, dovrete semplicemente aggiornare il file wp-config.php del sito con i dati del nuovo database:

// ** MariaDB settings** //

define('DB_NAME', 'database_name_here');
define('DB_USER', 'database_username_here');
define('DB_PASSWORD', 'database_password_here');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');

/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', '');

Dopo aver salvato il file, il sito WordPress inizierà a prelevare i dati dal nuovo database.

Sito WordPress aggiornato
Sito WordPress aggiornato

MariaDB e Kinsta

MariaDB è una delle piattaforme DBMS più innovative e questa tendenza continuerà probabilmente anche nel prossimo futuro. Noi di Kinsta crediamo nella potenza di MariaDB. Per questo motivo utilizziamo MariaDB come parte del nostro stack di server orientato alle prestazioni per offrire prestazioni eccellenti. I nostri piani di hosting permettono di sfruttare la tecnologia migliore e più veloce disponibile.

Kinsta rende semplice l’utilizzo di MariaDB. Non dovrete preoccuparvi di aggiornare il software del database, di pulire il database o di controllare gli errori. Ci occupiamo noi di tutte queste attività, così che possiate concentrarvi sulla creazione di contenuti fantastici per gli utenti del vostro sito.

Riepilogo

La migrazione da MySQL a MariaDB è un processo semplice. In breve, dovete eseguire un backup del database e disinstallare MySQL, quindi installare MariaDB e importare il backup del database.

Ricordate che potreste riscontrare alcuni problemi durante la migrazione da MySQL a MariaDB. Ad esempio, potreste ricevere un errore se lo schema di MySQL non corrisponde a quello di MariaDB. Inoltre, assicuratevi di eseguire mysql_upgrade durante la migrazione da una release all’altra. Nella maggior parte dei casi, la soluzione ai problemi di migrazione consiste nell’aggiornare entrambi i database alle loro ultime versioni prima di riprovare.

Man mano che MariaDB continua a innovarsi, probabilmente sarà sempre meno compatibile con MySQL a livello rudimentale. Quindi, se state utilizzando MySQL e state pensando di passare a MariaDB per ottenere maggiori vantaggi, vi consigliamo di farlo al più presto.

Con i servizi di Hosting di Database di Kinsta, potete creare un database e utilizzare connessioni interne veloci e sicure.

Salman Ravoof

Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.