Resumo : neste tutorial, você aprenderá como restaurar um arquivo dump MySQL usando a mysql
ferramenta.
O mysqldump
é um utilitário de linha de comando usado para fazer backup de bancos de dados MySQL, gerando instruções SQL que podem recriar o banco de dados.
O mysqldump
programa permite criar instantâneos de seus bancos de dados, tornando-o uma ferramenta importante para backup de dados.
Para restaurar o banco de dados a partir de um arquivo de despejo criado pelo mysqldump
programa, você usa o mysql
programa.
O mysql
programa lê as instruções SQL de um arquivo de despejo e as executa para recriar o banco de dados.
Aqui estão as etapas para restaurar um banco de dados a partir de um arquivo de despejo:
Primeiro, abra o prompt de comando no Windows ou o programa Terminal em sistemas do tipo Unix (macOS, Linux, Ubuntu, etc.).
Segundo, execute o seguinte comando para restaurar bancos de dados de um arquivo de despejo:
mysql -h hostname -P port -u username -p database_name < dump_file.sql
Linguagem de código: CSS ( css )
Vamos analisar o comando:
mysql
: Este é o cliente de linha de comando para MySQL.-h hostname
: esta opção especifica o nome do host ou endereço IP do servidor MySQL ao qual você deseja se conectar. Substitua “hostname” pelo endereço real.-P port
: esta opção especifica o número da porta na qual o servidor MySQL está sendo executado. Substitua “porta” pelo número da porta real.-u username
: esta opção especifica o nome de usuário MySQL que você deseja usar para se conectar ao servidor. Substitua “nome de usuário” pelo seu nome de usuário MySQL.-p
: esta opção solicita a senha do usuário MySQL. Depois de inserir o comando, você será solicitado a inserir a senha.database_name
: este é o nome do banco de dados MySQL no qual você deseja restaurar os dados. Substitua “database_name” pelo nome real do seu banco de dados de destino.< dump_file.sql
: esta parte do comando é usada para redirecionamento de entrada. Ele pega o conteúdo do arquivo de dump SQL (“dump_file.sql”) e o usa como entrada para omysql
comando. É assim que os dados e a estrutura do arquivo de despejo são carregados no banco de dados MySQL especificado.
Observe que você pode executar o mysql do seu computador para restaurar um arquivo de despejo ou do servidor MySQL remoto.
Exemplo de restauração de dump do MySQL
Primeiro, abra o prompt de comando no Windows ou o Terminal em sistemas do tipo Unix.
Segundo, despeje o classicmodels
banco de dados de amostra no arquivo D:\backup\classicmodels.sql
usando o mysqldump
programa.
mysqldump -u root -p classicmodels > D:\backup\classicmodels.sql
Linguagem de código: CSS ( css )
Terceiro, conecte-se ao servidor MySQL:
mysql -u root -p
Quarto, mude o banco de dados atual para classicmodels
banco de dados:
use classicmodels;
Linguagem de código: PHP ( php )
Quinto, exclua todas as linhas da payments
tabela:
delete from payments;
Linguagem de código: JavaScript ( javascript )
Sexto, saia do mysql
programa:
exit
Linguagem de código: PHP ( php )
Sétimo, restaure o classicmodels
banco de dados do classicmodels.sql
arquivo dump:
mysql -u root -p classicmodels < d:\backup\classicmodels.sql
Linguagem de código: CSS ( css )
Oito, conecte-se ao mysql:
mysql -u root -p
Nono, mude o banco de dados atual para classicmodels
:
use classicmodels;
Linguagem de código: PHP ( php )
Finalmente, conte as linhas da payments
tabela:
SELECT COUNT(*) FROM payments;
Saída:
+----------+
| COUNT(*) |
+----------+
| 273 |
+----------+
1 row in set (0.02 sec)
Linguagem de código: JavaScript ( javascript )
Ele retorna 27 linhas, o que significa que você restaurou com êxito o classicmodels
banco de dados do arquivo de despejo.
Solução de problemas
Ao restaurar a partir de um arquivo de despejo, você poderá encontrar o seguinte erro:
ERROR: ASCII '\0' appeared in the statement, but this is not allowed unless option --binary-mode is enabled and mysql is run in non-interactive mode. Set --binary-mode to 1 if ASCII '\0' is expected. Query: ' ■-'.
Linguagem de código: JavaScript ( javascript )
Provavelmente, a codificação do arquivo de despejo não é utf8.
Para corrigir isso, você pode abrir o arquivo dump em um editor de texto, por exemplo, Notepad no Windows ou Nano em sistemas do tipo Unix, e salvar o arquivo usando a codificação utf8.
Resumo
- Use o
mysql
comando para restaurar um arquivo de despejo criado pelomysqldump
programa.