USING BTREE引起的MySQL导入错误
最近一个项目中使用的使用mysql导入sql脚本时间出现错误 MySQL导入脚本命令 mysql -u username -p dbname < dbsql.sql 几次尝试没有成功,由于对Linux下命令行不是很熟悉,尝试使用phpMyAdmin来救急吧,安装完后运行SQL脚本出现以下错误: ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=utf8′ at line 11 问Google后以为是版本中默认语言样式不一样导致的错误,于是把代码改为了 ENGINE=InnoDB COLLATE=’utf8_general_ci’ phpMyAdmin运行SQL后仍然出错误,不过这次SQL运行到一个表的Create Table位置退出的,再对比这个表SQL与其它表SQL发现了 USING BTREE,这时我的反应是十有八九是它导致的了。于是把这个表前后的SQL分别运行,没错!!这也证明了之前的想法。接下来就容易办了,查找 USING BTREE mysql,你会看到很多这样的例子,mysql 5.14版本之前不认识 USING BTREE。解决办法有两个: 1、直接删除 USING BTREE 2、导出脚本时开启兼容性 mysqldump –compatible=mysql40 以下几个关于USING BTREE 的链接 USING BTREE mysql http://stackoverflow.com/questions/3767753/mysql-error-using-btree 关于USING BTREE Bug http://bugs.mysql.com/bug.php?id=25162 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |