我有一个巨大的转储文件,其中有大约200个表,其中一些表有数百万条记录。我知道当我mysqldump
时可以忽略特定的表格。
在从转储中“恢复”数据库时,是否可以忽略某些表或忽略这些表的插入查询?
提前致谢。
答案 0 :(得分:1)
使用mysql客户端无法做到这一点。转储文件基本上是CREATE TABLE和INSERT语句(以及其他一些语句)的大集合,并且mysql客户端没有任何方法来执行此类SQL脚本的 part 。
但是,我在必要时通过sed
创作来完成它。例如,如果我想要排除表“do_not_want”的创建和数据,我可以这样做:
cat mydumpfile.sql |
sed -e '/^-- Table structure for table .do_not_want./,/^UNLOCK TABLES;/d' |
mysql
这假设我们用于边界的模式不会出现在数据本身中。