2

我有一个巨大的转储文件,其中包含大约 200 个表和其中一些表的数百万条记录。我知道当我这样做时可以忽略特定的表mysqldump

从转储中“恢复”数据库时是否可以忽略某些表或仅忽略这些表的插入查询?

提前致谢。

4

1 回答 1

1

mysql客户端无法做到这一点。转储文件基本上是 CREATE TABLE 和 INSERT 语句(以及其他一些语句)的大集合,并且 mysql 客户端没有任何方式执行此类 SQL 脚本的一部分

但是,我在必要时通过对sed. 例如,如果我想排除表“do_not_want”的创建和数据,我可以这样做:

cat mydumpfile.sql |
sed -e '/^-- Table structure for table .do_not_want./,/^UNLOCK TABLES;/d' |
mysql

这假设我们用于边界的模式不会出现在数据本身中。

于 2013-02-26T02:46:42.377 回答