Importa o esporta il database dal database MySQL o MariaDB dalla shell MySQL o dalla riga di comando. Questo è il metodo più semplice per esportare un database o una tabella particolare da un database.
Se disponi di un database enorme che supera i 500 Mb, sarà molto difficile esportarlo, il che richiede più tempo per importare o esportare l'intero database, il che potrebbe causare un errore di timeout.
In questa guida imparerai come importare o esportare database usando la riga di comando dalla shell MySQL. Imparerai anche alcune soluzioni ai problemi per cui non puoi esportare il tuo database.
Prerequisiti
- Accesso SSH al server.
- Nome utente MySQL, nome database, password per esportare database.
- Utente e password MySQL che dispone dei privilegi per creare database per l'importazione.
Esporta il database MySQL dalla riga di comando
Accedi al tuo server SSH e prendi nota del nome del tuo database, nome utente e password. Assicurati che il tuo utente abbia pieno accesso al database che desideri esportare.
È possibile utilizzare il comando seguente per esportare l'intero database.
mysqldump -u username -p database_name > filename.sql
Ti verrà chiesto di inserire la password per il nome utente.
Dopo aver inserito la password, il tuo database verrà esportato in un .sql
formattare il file e memorizzato nella directory corrente.
Problemi relativi all'impossibilità di esportare il database
Errore di accesso negato.
- Puoi provare ad accedere come utente root
sudo su
ed esportare il database. - Potrebbe esserci una mancata corrispondenza della password.
- Può essere che l'utente non disponga di privilegi sufficienti per il database.
Accesso negato errore di privilegio PROCESSO.
Devi usare il --no-tablespaces
opzione con il mysqldump
comando. Quindi il comando sarà simile a quello qui sotto.
mysqldump --no-tablespaces -u username -p database_name > filename.sql
Esporta solo alcune tabelle
Per esportare tabelle specifiche di un database dalla riga di comando è necessario passare i nomi delle tabelle come mostrato di seguito.
mysqldump -u username -p database_name table1 table2 > filename.sql
Il comando precedente esporterà solo i nomi delle tabelle specificati.
Importa dati MySQL dalla riga di comando
Questo è il metodo migliore per importare un enorme file di database senza errori.
Carica il .sql
file sul tuo server. Accedi a SSH e vai alla directory in cui hai caricato il file di database.
Se non hai un database devi accedere come utente come root per creare un database.
CREATE DATABASE database_name /*\!40100 DEFAULT CHARACTER SET utf8mb4 */;
Per importare il database puoi usare il seguente comando.
mysql -u username -p database_name < backup.sql
Assicurati di avere abbastanza privilegi sul tuo database.
Attenzione: Se usi >
invece di <
. Tutti i dati nel backup.sql verranno cancellati o danneggiati.
Se le dimensioni del tuo file sono grandi, il tempo impiegato per l'importazione o l'esportazione sarà elevato.
Conclusione
Ora hai imparato come esportare e importare il database MySQL dalla riga di comando.
Grazie per il tuo tempo. In caso di problemi o feedback, si prega di lasciare un commento qui sotto.