同时导入了 mysqldump 文件错误 1064 (42000) 附近 '■ /' 在 1 号线

标签: MySQL windows
发布时间: 2016/10/3 19:05:39
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

无法导入以下由 mysqldump.exe 在命令行中的 windows 创建转储文件

/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `attachment_types` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `DESCRIPTION` varchar(50) DEFAULT NULL,
  `COMMENTS` varchar(256) DEFAULT NULL,
  PRIMARY KEY (`ID`),
  UNIQUE KEY `UK_ATTACHMENT_TYPES___DESCRIPTION` (`DESCRIPTION`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1;

导入的文件在命令行中时

mysql --user=root --password=root < mysqldumpfile.sql

它将引发错误

ERROR 1064 (42000) near ' ■/ ' at line 1

谁能帮我。

解决方法 1:

最后我得到解决

我们需要两个选项

  • --default-character-set=utf8︰ 这可以确保为每个字段使用 UTF8
  • --result-file=file.sql︰ 此选项可防止转储数据传递通过操作系统可能不使用 UTF8。相反它转储数据将直接传递到指定的文件。

使用这些新选项你 dump 命令会看起来像这样︰

mysqldump -u root -p --default-character-set=utf8 --result-file=database1.backup.sql database1

同时导入您可以选择使用︰

mysql --user=root --password=root --default_character_set utf8 < database1.backup.sql

资料来源︰http://nathan.rambeck.org/blog/1-preventing-encoding-issues-mysqldump

赞助商