2014-11-05 51 views
1

如何使用mysqldump转储数据库中指定表的指定列?Mysqldump需要列

我需要的是这样的

mysqldump --skip-lock-tables -q -Q -c -e -h localhost -u username -pPassword DatabaseName TableName Field1 Field5 | gzip > /tmp/dump.sql.gz 

但我得到的错误只

+0

我没有在文档中看到任何暗示这甚至可能的东西。语法是'mysqldump [options] [dbname] [tblname ...]'其中'...'只是表示您可以输入多个表名。 – 2014-11-05 16:50:19

回答

4

使用mysqldump它现在是不可能的,但你可以使用into outfile工具来获得所需的输出。在你的情况下,查询将看起来像:

LOAD DATA LOCAL INFILE 'c:/output.txt' INTO TABLE TableName2 
FIELDS TERMINATED BY ',' 
ENCLOSED BY '"' 
LINES TERMINATED BY '\r\n'; 

SELECT col1, col2 FROM DatabaseName.TableName INTO OUTFILE "c:/output.txt" FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY "\n"; 

以后你可以用下面的SQL中使用此文件中被称为TableName2只有两列(即col1和COL2。)另一个表上传