用sed,line cut提取sql插件

Ika*_*aro 5 linux awk grep sed mysqldump

我一直在阅读有关使用sed从sql转储中提取数据的stackoverflow ,更准确,最终目的是提取特定表的插入,以便仅恢复该表.

我正在使用这个:

sed -n '/LOCK TABLES `TABLE_NAME`/,/UNLOCK TABLES/p' dump.sql > output.sql
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是我们在1行上插入超过50Mb的插入,因此在提取插入时,输出会在行结束之前被切断.喜欢:

......
(4
3458,'0Y25565137SEOEJ','001','PREPAR',1330525937741,
NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
(43459,'666
Run Code Online (Sandbox Code Playgroud)

我尝试使用awk甚至简单grep,结果是一样的,线被切断.

编辑:我在mysql的sql转储上使用它,我正在使用的系统是Centos 5.2

Zso*_*kai 0

但如果它是使用 创建的转储文件exp,则可以使用以下命令仅导入所需的表

imp user/pass tables=table1,table2 ...
Run Code Online (Sandbox Code Playgroud)