&引用;无效的utf8mb4字符串";从mysqldump导入时点字段上的警告

&引用;无效的utf8mb4字符串";从mysqldump导入时点字段上的警告,mysql,utf8mb4,Mysql,Utf8mb4,我最近转储了一个数据库,作为从旧服务器迁移到新服务器的一部分。某些表将utf8mb4字符集作为默认排序规则,并作为某些字段的字符集 其中一个表还有一个POINT类型的字段。当我运行mysqldump--defaultcharacterset=utf8mb4…>dump.sql然后尝试导入dump.sql对于在点字段中设置了位置的任何行,我都会收到“无效utf8mb4字符串”警告 我需要为此担心吗?在我看来,数据迁移是正确的,但我确实不喜欢看到警告 编辑:示例代码和如何复制。下面是示例数据库的示例

我最近转储了一个数据库,作为从旧服务器迁移到新服务器的一部分。某些表将
utf8mb4
字符集作为默认排序规则,并作为某些字段的字符集

其中一个表还有一个POINT类型的字段。当我运行
mysqldump--defaultcharacterset=utf8mb4…>dump.sql
然后尝试导入
dump.sql
对于在点字段中设置了位置的任何行,我都会收到“无效utf8mb4字符串”警告

我需要为此担心吗?在我看来,数据迁移是正确的,但我确实不喜欢看到警告

编辑:示例代码和如何复制。下面是示例数据库的示例表上的
mysqldump
的输出,没有特殊选项(添加默认的utfmb4字符集选项没有帮助)。该表有一行:

/*!40101 SET NAMES utf8mb4 */;
/*!40103 SET TIME_ZONE='+00:00' */;       
/*!40101 SET character_set_client = utf8mb4 */;

CREATE TABLE `Items` (
  `ID` int(11) NOT NULL AUTO_INCREMENT,
  `Title` varchar(255) CHARACTER SET utf8mb4 NOT NULL,
  `LatLong` point NOT NULL,      
  PRIMARY KEY (`ID`),     
  SPATIAL KEY `LatLong` (`LatLong`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;

INSERT INTO `Items` VALUES (1,'item1','\0\0\0\0\0\0\0?4??=@\??O@?V?');
如果在包含此sql的文件上使用mysql
source file.sql
运行,则在插入时会收到以下警告:

Query OK, 1 row affected, 1 warning (0.00 sec)
Warning (Code 1300): Invalid utf8mb4 character string: 'BE141E'
进一步资料:

> file -i file.sql
file.sql: application/octet-stream; charset=binary

> mysql --version
mysql  Ver 14.14 Distrib 5.7.17, for Linux (i686) using  EditLine wrapper

运行Ubuntu16.04LTS我认为这是另一个症状。 在MySQL 5.7.23、8.0.12中修复。Changelog:“如果使用mysqldump或mysqlpump在没有--hex blob选项的情况下转储二进制数据,则重新加载转储文件可能会产生虚假警告(不管警告如何,值都正确插入)。这些值现在由_binaryintroductor写入
使警告静音。”

我认为这是另一种症状。 在MySQL 5.7.23、8.0.12中修复。Changelog:“如果使用mysqldump或mysqlpump在没有--hex blob选项的情况下转储二进制数据,则重新加载转储文件可能会产生虚假警告(不管警告如何,值都正确插入)。这些值现在由_binaryintroductor写入
使警告静音。”

奇怪。你能给我们看一个转储文件的例子吗?我已经用一个转储文件的例子更新了这篇文章。你能给我们展示一个转储文件中的示例吗?我已经用一个示例转储文件更新了帖子。虽然这个链接可能会回答这个问题,但是在堆栈溢出时不鼓励使用链接答案,你可以通过获取链接的重要部分并将其放入你的答案中来改进这个答案,这样可以确保在链接被更改或删除时,您的答案仍然是答案:)此外,结尾处的签名可能会被编辑掉,而此链接可能会回答问题,堆栈溢出时不鼓励使用仅链接的答案,您可以通过将链接的重要部分放入答案中来改进此答案,这样可以确保在链接被更改或删除时,您的答案仍然是答案:)并且您最后的签名可能会被编辑掉