将数据库导入phpMyAdmin(MAMP)时出现SQL语法错误

时间:2013-12-03 16:40:51

标签: mysql linux phpmyadmin mamp

为了使用MAMP将120Mb数据库导入phpMyAdmin,我使用以下方法将其拆分:

split -l 100 /Applications/MAMP/htdocs/test/database_test_wordpress.sql /Applications/MAMP/htdocs/test/dbpart-

但是,在导入第二部分时,我收到错误:

Error
SQL query:

CREATE TABLE  `wp_comments` (

 `comment_ID` BIGINT( 20 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
 `comment_post_ID` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT  '0',
 `comment_author` TINYTEXT NOT NULL ,
 `comment_author_email` VARCHAR( 100 ) NOT NULL DEFAULT  '',
 `comment_author_url` VARCHAR( 200 ) NOT NULL DEFAULT  '',
 `comment_author_IP` VARCHAR( 100 ) NOT NULL DEFAULT  '',
 `comment_date` DATETIME NOT NULL DEFAULT  '0000-00-00 00:00:00',
 `comment_date_gmt` DATETIME NOT NULL DEFAULT  '0000-00-00 00:00:00',
 `comment_content` TEXT NOT NULL ,
 `comment_karma` INT( 11 ) NOT NULL DEFAULT  '0',
 `comment_approved` VARCHAR( 20 ) NOT NULL DEFAULT  '1',
 `comment_agent` VARCHAR( 255 ) NOT NULL DEFAULT  '',
 `comment_type` VARCHAR( 20 ) NOT NULL DEFAULT  '',
 `comment_parent` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT  '0',
 `user_id` BIGINT( 20 ) UNSIGNED NOT NULL DEFAULT  '0',
PRIMARY KEY (  `comment_ID` ) ,
KEY  `comment_post_ID` (  `comment_post_ID` ) ,
MySQL said: Documentation

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 18 

我是否需要以某种方式升级数据库?或者我离开了?!对不起,新手: - )

注意:我首先尝试在MAMP的php.ini中增加upload_max_filesizememory_limitpost_max_size,但在导入时出现MySQL server has gone away错误。

2 个答案:

答案 0 :(得分:2)

split是一个只对文本进行切片的linux命令。你不能这样做,并希望导入工作。在您的特定示例中,;未正确完成表的创建,这意味着您很可能错过了在文本剪切部分下方创建索引或约束。

我根本不会切片文件并从控制台导入整个SQL文件而不是使用php。这应该可以解决问题:

mysql -u username -p database_name < file.sql

答案 1 :(得分:0)

感谢大家指出split不是要走的路!

相反,我设法通过在重新启动MAMP之前编辑以下限制来上传原始的120Mb文件:

在MAMP / bin / php / php5.4.10 / conf / php.ini中,我将memory_limit更改为200M,将post_max_size更改为200M和{{ 1}}到upload_max_filesize

然后我将MAMP / Library / support-files / my-large.cnf复制到MAMP / Library并将其重命名为my.cnf,然后将120M设置为max_allowed_packet

指向MAMP常见问题和https://stackoverflow.com/a/13613140/767761