关于rapid引擎增量导入数据报错的处理方法

2024年 6月 2日 107.7k 0

我的操作系统为oralcelinux8,昨晚在实验rapid引擎的增量导入数据时,报下面的错。

SELECT START_SECONDARY_ENGINE_INCREMENT_LOAD_TASK('test', 't1');

ERROR 2013 (HY000): Lost connection to MySQL server during query

No connection. Trying to reconnect...

Connection id:    8

Current database: test

+----------------------------------------------------------+

| START_SECONDARY_ENGINE_INCREMENT_LOAD_TASK('test', 't1') |

+----------------------------------------------------------+

| not support when lower_case_table_names == 0             |

+----------------------------------------------------------+

1 row in set (0.03 sec)

从官方社区的技术文档上看,要求上面的的参数要调整为1。

增量导入数据的限制和需求

  1. 需要设置表名大小写不敏感,即设置 lower_case_table_names = 1
  2. 需要开启GTID模式,即设置 gtid_mode = ONenforce_gtid_consistency = ON
  3. 需要采用row格式的binlog event,不支持statement格式,即设置 binlog_format = ROW。增量任务运行过程中,检测到statement的DML event,可能会报错退出。
  4. 需要关闭GIPKs特性,即设置 sql_generate_invisible_primary_key = OFF。用户表不能有 invisible primary key,如果表包含隐式不可见的主键,在全量导入过程中会报错;同时也不支持用户表中存在任何不可见列(invisible column)。
  5. 需要先对表执行过一次全量导入后,才能启动增量导入任务,否则任务启动会报错。
  6. 不支持 PARTIAL_UPDATE_ROWS_EVENT 类型的binlog,即不要设置 binlog_row_value_options = PARTIAL_JSON
  7. 不支持 CREATE TABLE SELECT 语句,增量任务运行过程中,检测到该语句产生的binlog event时可能会报错退出。
  8. 不支持XA事务,运行过程中检查到XA事务会报错退

从上面的信息是要调整参数lower_case_table_names ,由于这个参数是只读参数,只能在配置文件中添加lower_case_table_names=1 ,其它参数也按照官方的技术文档进行添加。但添加后,数据库服务启动报错了。只能注释这个参数lower_case_table_names =1,才能正常启动数据库。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论