hzc989
                (Hzc989)
              
              
                  
                  
              4
              
             
            
              我把表结构直接贴出来文本吧:
*************************** 1. row ***************************
       Table: game_character
Create Table: CREATE TABLE `game_character` (
  `_id` bigint(20) unsigned NOT NULL,
  `uid` bigint(20) unsigned NOT NULL,
  `gid` bigint(20) unsigned NOT NULL,
  `gtype` int(10) unsigned NOT NULL,
  `name` varchar(32) NOT NULL,
  `tCreate` bigint(20) NOT NULL DEFAULT '0',
  `in_use` tinyint(1) NOT NULL DEFAULT '1',
  `tDelete` bigint(20) unsigned NOT NULL DEFAULT '0',
  UNIQUE KEY `uni_gid_gtype_name` (`gid`,`gtype`,`name`),
  KEY `uid_gid` (`uid`,`gid`),
  KEY `_id` (`_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin
             
            
              
              
              
            
           
          
            
              
                db_user
                (Db User)
              
              
                  
                  
              5
              
             
            
              稍等,我稍后测试下,可能会比较晚,今天公司事情比较多,请问你这是正式环境么,你这比较紧急么,另外可以把你那条insert粘贴出来么,最好还有dm的配置,我这看看是否能复现,把敏感的信息剔除掉
             
            
              
              
              
            
           
          
            
              
                hzc989
                (Hzc989)
              
              
                  
                  
              6
              
             
            
              不急的,不是正式环境,就是在做一些数据迁移
补充下背景:
dm 迁移的时候没有配置跳过utf8 check, 附图上的全程测试也没有设置这个 utf8 check 跳过
tidb_skip_utf8_check 
             
            
              
              
              
            
           
          
            
              
                db_user
                (Db User)
              
                
              
                  
                  
              8
              
             
            
              抱歉这么晚才回复,我这做了下测试是可以成功的,可以把任务的配置文件发下么,把ip之类的敏感信息去掉

             
            
              
              
              
            
           
          
            
              
                hzc989
                (Hzc989)
              
              
                  
                  
              9
              
             
            
              感谢支持~~
今天发现原来不是 emoji 的问题,是我们导入这些数据里面,有几个无法识别的 utf8 coding:
\ufffd,具体来说就是这个� ,导致触发了 tidb 的 utf8 check,其实并非不支持 emoji
官方排错文档有说:https://docs.pingcap.com/tidb/stable/tidb-troubleshooting-map#62-data-migration
另外参考一篇 blog 也有提到:https://izualzhy.cn/interesting-encode,\ufffd这个非常常见,是无法转换的时候就会转成这个编码的。
目前的疑点就剩一个:在 shell 里面直接执行 INSERT SQL Query,是可以成功的,没有触发检查。
             
            
              
              
              
            
           
          
            
              
                system
                (system)
                  关闭
              
              
                  
                  
              10
              
             
            
              此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。