在导入MAGENTO SAMPLE数据时出现USING BTREE错误,主要原因是MYSQL不兼容问题导致。在tag与tag_relation两个表中使用了USING BTREE,但其格式不兼容导致导入失败。修改后即可正常导入了。
修改如下:
PRIMARY KEY (`tag_id`) USING BTREE,
修改为:
PRIMARY KEY `tab_id` USING BTREE(`tag_id`),
PRIMARY KEY (`tag_relation_id`) USING BTREE,
修改为
PRIMARY KEY `tag_relation_id` USING BTREE(`tag_relation_id`),
再次导入数据库则可完整导入。
PS:
错误原因:
主要是是MYSQL 5.1的一个BUG,其出现原因是mysql 5.1和mysql 5.0在处理到索引语句时有所区别。
案例:
有时导入mysql会提示如下错误: ERROR 1064 (42000) at line 486: 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 ‘USING BTREE, KEY `Reference_1_FK` (`RoleID`), CONSTRAINT `FK_userinfo_RoleID’ at line 11
解决办法:
打开要导入的文件在里面搜索 BTREE 找到如下内容 KEY `columnCindex` (`columnC`) USING BTREE 修改为 KEY `columnCindex` USING BTREE (`columnC`), 然后就可以顺利通过了
总结:
出现了不兼容的情况,在Mysql 5.1中建有UNIQUE KEY 的表导出时是这个样子的“KEY `pkey` (`pkey`) USING BTREE”,
而Mysql 5.0处理的时候只能识别“KEY `pkey` USING BTREE (`pkey`)”。因此需要改一下Key的位置。