Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Importando e exportando para arquivos usando a linha de comando do MySQL


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 MySQL nome de usuário seguirá.
  • O -p sinalizador indica que devemos ser solicitados a fornecer a senha associado ao nome de usuário acima .
  • database_name é claro que é o nome exato do banco de dados a ser exportado.
  • O > símbolo é uma diretiva Unix para STDOUT , 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 por output_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.