actiontech / dtle

Distributed Data Transfer Service for MySQL
https://actiontech.github.io/dtle-docs-cn
Mozilla Public License 2.0
551 stars 133 forks source link

MySQL-MySQL full copy: not support MySQL 8.0.31 with charset utf8 #1035

Closed asiroliu closed 1 year ago

asiroliu commented 1 year ago

Description

MySQL-MySQL full copy: not support MySQL 8.0.31 with charset utf8 PS. MySQL 8.0.18 is passed

Steps to reproduce the issue

  1. use src and dest MySQL in 8.0.31
  2. create some table use charset utf8
    sql> create table char_columns(id int(11) not null primary key, c_char char(255)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  3. create dtle job
  4. job failed, and src dtle log
    
    2022-11-29T09:35:08.791+0800 [DEBUG] inspector: Potential unique keys.: job=utf8_full_char_columns-migration schema=action_db table=char_columns uniqueKeys=["PRIMARY: [id]; has nullable: false"]
    2022-11-29T09:35:08.791+0800 [DEBUG] inspector: table has unique keys: job=utf8_full_char_columns-migration schema=action_db table=char_columns n_unique_keys=1
    2022-11-29T09:35:08.791+0800 [DEBUG] inspector: a unique key: job=utf8_full_char_columns-migration uk="PRIMARY: [id]; has nullable: false"
    2022-11-29T09:35:08.792+0800 [INFO]  inspector: chosen unique key: job=utf8_full_char_columns-migration schema=action_db table=char_columns uk="PRIMARY: [id]; has nullable: false"
    2022-11-29T09:35:08.794+0800 root@dtle-autotest-R820-09-1:/# eCreateTableStmt.: job=utf8_full_char_columns-migration err="ParseCreateTableStmt action_db.char_columns: [parser:1115]Unknown character set: 'utf8mb3'"
    sql=
    | CREATE TABLE `char_columns` (
    |   `id` int NOT NULL,
    |   `c_char` char(255) DEFAULT NULL,
    |   PRIMARY KEY (`id`)
    | ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3

2022-11-29T09:35:08.794+0800 [INFO] extractor: Step: committing transaction: job=utf8_full_char_columns-migration n=2 2022-11-29T09:35:08.794+0800 [ERROR] extractor: onError: job=utf8_full_char_columns-migration err="ParseCreateTableStmt action_db.char_columns: [parser:1115]Unknown character set: 'utf8mb3'" hasShutdown=false


## Output of `./dtle version`:**

9.9.9.9-master-31c27f4

asiroliu commented 1 year ago

verified DTLE: 9.9.9.9-master-0d86fbf MySQL: 8.0.32