mysql dump - 排除一些表数据和无数据

Posted

技术标签:

【中文标题】mysql dump - 排除一些表数据和无数据【英文标题】:mysql dump - exclude some table data and no-data 【发布时间】:2018-02-20 23:13:39 【问题描述】:

我有一个包含 100 个表的大型数据库 我需要创建转储。 98个表有数据,2个表结构

喜欢这个

mysqldump -u root -p --no-data db.table99,  table10  dbname > dump.sql

我怎样才能用一个请求做到这一点?

【问题讨论】:

使用--ignore-table,这里有描述***.com/questions/425158/… Skip certain tables with mysqldump的可能重复 【参考方案1】:

mysqldump 要么包含数据,要么不包含。你不能用一个查询来做到这一点。

但是,您可以安全地将两个 mylsqdumps 请求合并到 bash 上的一个文件中。第一个排除了您不想要但有数据的表,第二个只有 2 个没有数据的表:

 command1 & command2;  > new_file

command1 => mysqldump -u root -p --ignore-table=dbname.table99 --ignore-table=dbname.table100 dbname

command2 => mysqldump --no-data -u root -p dbname table99 table100

很遗憾,您必须提供两次密码。但既然你想要一行,你可以把它放在一个 bash 脚本中

【讨论】:

以上是关于mysql dump - 排除一些表数据和无数据的主要内容,如果未能解决你的问题,请参考以下文章

MySQL: 如何dump一个表/

Mysql加入多个表排除一些记录

导入dump包时表结构会自动导入吗

mysqldump备份数据库时排除某些库

mysql 导出/导入表结构和表数据

mysql dump备份不成功