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

Mysqldump apenas tabelas com certos curingas de prefixo / Mysqldump?


Você pode especificar nomes de tabelas na linha de comando um após o outro, mas sem curingas.mysqldump databasename table1 table2 table3

Você também pode usar --ignore-table se isso fosse mais curto.

Outra ideia é colocar as tabelas em um arquivo com algo como
mysql -N information_schema -e "select table_name from tables where table_schema = 'databasename' and table_name like 'bak_%'" > tables.txt 

Edite o arquivo e coloque todos os bancos de dados em uma linha. Então faça
mysqldump dbname `cat tables.txt` > dump_file.sql

Para soltar tabelas em uma linha (não recomendado), você pode fazer o seguinte
mysql -NB  information_schema -e "select table_name from tables where table_name like 'bak_%'" | xargs -I"{}" mysql dbname -e "DROP TABLE {}"