Para exportar ou importar com MySQL, comece fazendo login em seu servidor, de preferência com
sudo
(raiz) acesso. Exportando do MySQL
A melhor ferramenta para exportar um banco de dados MySQL para um arquivo de texto é
mysqldump
. Para usar
mysqldump
, você precisará conhecer as credenciais de login de um usuário MySQL
apropriado que tenha os privilégios necessários para exportar o banco de dados em questão. Com essas informações em mãos, digite o
mysqldump
comando com os sinalizadores e opções apropriados:$ mysqldump -u my_username -p database_name > output_file_path
As opções em uso são:
- O
-u
sinalizador indica que o MySQLnome de usuário
seguirá. - O
-p
sinalizador indica que devemos ser solicitados a fornecer asenha
associado aonome de usuário
acima . database_name
é claro que é o nome exato do banco de dados a ser exportado.- O
>
símbolo é uma diretiva Unix paraSTDOUT
, que permite que os comandos Unix produzam os resultados de texto do comando emitido para outro local. Nesse caso, esse local de saída é um caminho de arquivo, especificado poroutput_file_path
.
Observação:geralmente é aconselhável inserir o caminho completo e o nome do arquivo para o
output_file_path
, para que o arquivo resultante seja gerado exatamente onde você deseja. Por exemplo, para exportar os
livros
banco de dados como o book_admin
usuário para o ~/backup/database
diretório, podemos usar o seguinte comando:$ mysqldump -u book_admin -p books > ~/backup/database/books.sql
Enter password:
Depois de inserir nossa senha quando solicitado acima, este comando cria nosso arquivo de backup com um
.sql
sufixo (que é completamente opcional, mas aconselhável) no diretório apropriado. Por padrão,
mysqldump
não save comandos que tentam modificar a existência do banco de dados real. Em vez disso, por padrão, apenas tabelas
reais (e seus respectivos dados) são salvos e, assim, serão preparados para posterior importação utilizando este arquivo. Se você precisar exportar (e depois recriar) mais um banco de dados, leia o --databases
bandeira na documentação oficial. Importando para o MySQL
Agora que você aprendeu a exportar um backup de um banco de dados MySQL, vamos explorar como reverter o processo e importar o backup em um banco de dados existente.
Como você pode imaginar, para complementar o
mysqldump
comando usado para exportar, existe um mysqlimport
semelhante comando para importação. Na maioria dos casos, importar é apenas uma questão de passar praticamente idênticos opções para o
mysqlimport
comando. Para importar nossos books.sql
salvos criado anteriormente, usaríamos muitos dos mesmos sinalizadores e praticamente a mesma sintaxe. $ mysqlimport -u book_admin -p books_production ~/backup/database/books.sql
Enter password:
Como antes, o
-u
e -p
sinalizadores são necessários para autenticação, que é seguido pelo nome do banco de dados
para importar (neste caso, estamos usando um banco de dados de produção diferente) e, por último, especificando o caminho totalmente qualificado para o arquivo de despejo SQL que contém nossos dados de importação, ~/backup/database/books.sql . Também vale a pena notar que mysqlimport
não requer o <
ou >
(STDIN/STDOUT) que foram usados com mysqldump
.
Com isso, você aprendeu como exportar/fazer backup de um banco de dados existente e como importar/restaurar esses dados no mesmo banco de dados ou até mesmo em um banco de dados diferente.