2011-04-28 69 views
2

所以我有这个mysql数据库是通过phpmyadmin导入巨大的方式。当我与bigdump设置它我得到这个错误马上蝙蝠使用BigDump导入mysql数据库(大约80mb's)时出错

在该行339

停在这个地方当前查询包括超过300条转储线。如果您的转储文件是由某个工具创建的,那么在每个查询结束时,如果转储文件没有放置分号,并且换行符包含扩展插入,则会发生这种情况。“

因此,在没有中断的300行它崩溃我去和粘贴此字符串流水线200只,以确保有多少是正确的:

INSERT DELAYED INTO `invites_statistic` 
(`user_id`,`purchaseid`,`prodid`,`reg_length`,`invites_count`,`used`,`code`) 
VALUES 

我试图改变“创建的查询的最大长度”的phpMyAdmin的长度,但随后我得到甚至更多的错误告诉我,我不能在某些地方有这样的字符串
我跳过SQL文件,每次破坏之前添加前一个字符串几行,这是工作,但这是一个巨大的文件400K线。任何人都知道有一个好的解我注定了吗?

+0

尝试用'--skip-extended-insert'重做转储,因此每行都有自己的插入语句,而不是每个插入的多行。它会使转储文件大得多,但会大大减少每插入大小。 – 2011-04-28 15:33:44

+0

我还应该使用延迟插入吗? – user729606 2011-04-28 15:36:36

+0

只有当其他人在加载转储时正在使用数据库时。否则它是无用的。 – 2011-04-28 16:14:20

回答

3

我通过将$max_query_lines的值从300更改为更高的数来解决此问题。

// How many lines may be considered to be one query (except text lines) 
$max_query_lines = 10000;