[vc_row][vc_column][vc_column_text css=””]
Importare database di grandi dimensioni può diventare un incubo se ci si affida ai classici strumenti via browser come phpMyAdmin. Spesso, file SQL superiori ai 50MB causano timeout del server o errori di memoria, interrompendo il caricamento a metà.
La soluzione definitiva per importare file enormi (anche di diversi Gigabyte) senza errori è utilizzare da terminale il comando Source di MySQL/MariaDB. Questo metodo è diretto, velocissimo e non sovraccarica il server web.
Ecco la procedura passo dopo passo per importare il tuo dump SQL.
Preparazione all’importazione
Prima di iniziare, assicurati di aver già creato un database vuoto sul tuo server con lo stesso nome (o un nome nuovo) che ospiterà i dati. Puoi farlo dal tuo pannello di controllo (Plesk/cPanel) o direttamente da riga di comando.
1. Posizionati nella cartella corretta
Accedi al terminale e spostati nella directory dove hai caricato il file .sql. Attenzione: Non puoi fare cd sul file, devi farlo sulla cartella che lo contiene.
cd /home/cartella_backup/
2. Accedi a MySQL
Ora dobbiamo entrare nella console di gestione del database. Usa questo comando (ti verrà chiesta la password subito dopo):
mysql -u {username} -p
-
Sostituisci
{username}con il tuo nome utente del database. -
Inserisci la password quando richiesto (non vedrai i caratteri mentre digiti, è normale).
3. Seleziona il Database
Una volta dentro (vedrai il prompt cambiare in MariaDB [(none)]>), devi dire al sistema su quale database lavorare.
use miodatabase;
Dovresti vedere il messaggio: Database changed.
Eseguire il comando Source per importare database grandi dimensioni
Ora che siamo dentro al database corretto, possiamo lanciare l’importazione. Il comando source legge il file SQL ed esegue tutte le istruzioni contenute al suo interno in sequenza.
source nomefile.sql;
Il sistema inizierà a scorrere centinaia di righe di codice velocemente. Non preoccuparti, sta scrivendo i dati.
Esempio di output:
Query OK, 0 rows affected (0.00 sec)
…
Perché usare questo metodo?
Usare la riga di comando per importare database grandi dimensioni bypassa i limiti di upload del PHP e di timeout di Apache/Nginx. Mentre un upload via browser potrebbe fallire dopo 60 secondi, il comando source continuerà a lavorare finché l’intero database non sarà ripristinato, garantendo l’integrità dei dati.
Quando il cursore smette di scorrere e torna al prompt di comando, l’importazione è conclusa con successo.
[/vc_column_text][/vc_column][/vc_row]
