Como posso despejar uma tabela específica ou um conjunto de tabelas sem incluir o restante das tabelas de banco de dados?
relate perguntas
-
Existem ferramentas de benchmarking do MySQL? [fechado]
-
Onde posso encontrar o log lento do mysql?
-
Como posso otimizar um mysqldump de um banco de dados grande?
-
Quando é o momento certo para usar o MariaDB em vez do MySQL e por quê?
-
Como um grupo pode rastrear alterações no esquema do banco de dados?
Se você estiver despejando as tabelas t1, t2 e t3 do mydb
Se você tiver muitas tabelas no mydb e quiser despejar tudo, exceto t1, t2 e t3, faça o seguinte:
De uma chance !!!
ATUALIZAÇÃO 2014-03-06 10:15 EST
@RoryDonohue apontou para mim que a função GROUP_CONCAT precisa ter seu comprimento máximo estendido. Adicionei a variável de sessão group_concat_max_len à minha resposta com um comprimento máximo de 10K. Obrigado, @RoryDonohue.
Uma nota para expandir a resposta de RolandoMySQLDBA .
O script que ele incluiu é uma ótima abordagem para incluir (
and table_name in
) ou excluir (and table_name NOT in
) uma lista de tabelas.Se você precisar excluir apenas uma ou duas tabelas, poderá excluí-las individualmente com a
--ignore-table
opção:Quando você tem mais do que algumas tabelas, é muito melhor executar algo assim:
Ou algo assim:
Lembre-se de que esses comandos devem ser digitados em apenas uma linha.
Você pode fazer isso simplesmente usando o comando abaixo: