我试图加速导入一个包含完整.sql文件的文件夹的大型数据集
ls -rS *.sql | parallel -j16 mysql -uusername -ppassword dbname "<"
运行后不久,我收到一个错误:
ERROR 1146 (42S02) at line 65: Table 'dbname.some_table' doesn't exist
ERROR 1146 (42S02) at line 69: Table 'dbname.some_table_other' doesn't exist
是否有一种简单的方法来修改此命令行arg以找出生成此错误的文件?
我已经尝试过在所有文件的第65-69行运行sed的脚本,但是有太多的结果要知道。一旦我确定哪个sql生成了错误,我就可以删除它并重新导入它。
解决:用过
ls -rS *.sql | xargs grep -i "dbname.some_table" | less
追溯过早被调用的地方
不幸的是,它在很多文件中。文件的大小很多。(这就是为什么我试图在文件的特定行上使用sed脚本)
—
Justin
grep
在您的网站目录上查找简单的内容dbname.some_table
。