为了使用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_filesize
,memory_limit
和post_max_size
,但在导入时出现MySQL server has gone away
错误。
答案 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