使用以下声明:
mysqldump --complete-insert --lock-all-tables --no-create-db
--no-create-info --extended-insert --password=XXX -u XXX
--dump-date yyy > yyy_dataOnly.sql
我得到如下的INSERT语句:
INSERT INTO `table` VALUES (1,'something'),(2,'anything'),(3,'everything');
我需要的是这样的事情:
INSERT INTO `table` VALUES (1,'something');
INSERT INTO `table` VALUES (2,'anything');
INSERT INTO `table` VALUES (3,'everything');
有没有办法告诉“mysqldump”为每一行创建一个新的INSERT语句? 谢谢你的帮助!
答案 0 :(得分:238)
答案 1 :(得分:1)
在较新的版本中,对标志进行了更改: 从文档中:
-extended-insert,-e
使用包含多个VALUES列表的多行语法编写INSERT语句。这样可以生成较小的转储文件,并在重新加载文件时加快插入速度。
-opt
默认情况下启用的此选项是--add-drop-table --add-locks --create-options --disable-keys --extended-insert --lock-tables-的组合的简写形式快速--set-charset。它提供了快速的转储操作并生成了一个转储文件,可以将其快速重新加载到MySQL服务器中。
由于默认情况下启用了--opt选项,因此只需指定其相反选项,--skip-opt即可关闭多个默认设置。有关选择启用或禁用受--opt影响的选项的子集的信息,请参见mysqldump选项组的讨论。
-skip-extended-insert
关闭扩展插入