【发布时间】:2020-05-18 18:30:44
【问题描述】:
想知道是否有一种方法可以使用 mysqldump 跳过/忽略所有临时表。在我们的例子中,这些表的前缀是 tmp{guid}。
这些临时表的生命周期很短,它们用于在其父应用程序中构建某种报告。生命周期最长可达 1 分钟。
编辑: 有人建议我使用 ignore-tables 参数,不幸的是,这并没有为我提供一种将通配符指定为表名 (tmp*) 的方法。
【问题讨论】:
-
这能回答你的问题吗? Skip certain tables with mysqldump
-
@nbk 并非如此,由于表名是唯一的,因此忽略表不支持像
tmp*这样的通配符名称。 -
看到 mysqldump 不能做通配符,所以你有一种语言可以构建忽略表字符串。 Information_schema 为您提供所有 temo 表,然后构建字符串。如果你有 linux 你可以使用github.com/maxbube/mydumper/blob/master/docs/…
-
@nbk 感谢您的建议,但我想暂时坚持使用官方工具(目前似乎没有在 dumper 上进行太多开发)。如果我要构建字符串并且其中一个表不再存在,它会出错还是会默默地继续?
-
@Tom - 希望这会有所帮助 -> stackoverflow.com/questions/25398663/…