反馈已提交

网络繁忙

KingBaseES环境准备

  • 文档创建者:Wendy123456
  • 历史版本:2
  • 最近更新:Wendy123456 于 2025-07-10
  • 1. 概述

    使用实时管道任务、数据开发-实时任务同步 KingBaseES 数据前,需要参考本文在数据源中进行一些配置,为后续的数据同步做好准备。

    2. 操作步骤

    2.1 确认当前使用的数据库版本

    数据库类型
    支持版本
    KingbaseES(MySQL模式V9.X
    KingbaseES(SQLServer模式V8.X

    2.2 赋予数据连接用户权限

    1)新建用户,作为 KingbaseES 数据连接的用户名。

    • su - kingbase:切换到 kingbase 安装用户。

    • ksql -U system -d test -W:以 system 用户登录 test 数据库,会提示输入密码。

    • CREATE USER wendy WITH REPLICATION LOGIN PASSWORD '123456'; 创建一个用户,名称为 wendy,密码为 123456,并赋予他复制权限。

    注:用户根据实际情况设置用户名和密码。

    1752144607452243.png

    2)为新建用户授予某个模式下所有表的读取权限。

    授予用户 wendy 名为 FLY 模式下所有表的查询权限,用户根据实际情况修改下方 SQL 语句。

    GRANT SELECT ON ALL TABLES IN SCHEMA FLY TO wendy;

    1752146202639093.png

    2.3 修改REPLICA IDENTITY

    修改复制标识为 FULL(使用整行作为标识),该属性决定了当数据发生 UPDATE/DELETE 时,日志记录的字段。

    注:所有需要进行实时同步的表,都应该做此操作。

    alter table schema.tablename REPLICA IDENTITY FULL;
    • schema:模式名称。

    • tablename:表名称。

    2.4 修改配置文件

    2.4.1 KingbaseES(MySQL模式)

    若数据库为 KingbaseES(MySQL模式),参考本节内容。

    1)使用 \q 语句退出 kingbase 登录。

    2)进入/home/KingbaseES/V9/data路径下,修改配置文件 kingbase.conf(使用 vi 语句),将 wal_level 的值修改为 logical。示例如下。

    注:或者找到下面代码中的设置项,取消注释,修改对应的值。

    wal_level = logical

    3)设置用户 replication 权限。

    在 data 目录下的 sys_hba.conf 中,增加下述内容以保障账号访问权限。

    注:替换 username 为本文 2.2 节创建的用户。

    local replication username trust
    host replication username 127.0.0.1/32 trust
    host replication username ::1/128 trust

    2.4.2 KingbaseES(SQLServer模式)

    若数据库为 KingbaseES(SQLServer模式),参考本节内容。

    1)使用 \q 语句退出 kingbase 登录。

    2)进入/home/kingbase/data路径下,修改配置文件 kingbase.conf(使用 vi 语句),将 wal_level 的值修改为 logical。示例如下。

    注:或者找到下面代码中的设置项,取消注释,修改对应的值。

    wal_level = logical

    3)设置用户 replication 权限。

    在 data 目录下的 sys_hba.conf 中,增加下述内容以保障账号访问权限。

    注:替换 username 为本文 2.2 节创建的用户。

    local replication username trust
    host replication username 127.0.0.1/32 trust
    host replication username ::1/128 trust

    2.5 重启数据库

    用户根据实际情况修改语句:

    ./sys_ctl restart -D /home/KingbaseES/V9/data

    2.6 检查权限是否可用

    1)使用SELECT * FROM pg_create_logical_replication_slot('slot_test', 'decoderbufs');创建 slot 。如下图所示:

    1752148400786330.png

    slot_test 用户可自定义,为逻辑复制槽的名称;创建成功代表:

    • 用户具备 REPLICATION 权限或超级用户权限。

    • wal_level 已设置为 logical 。

    2)使用SELECT * FROM pg_replication_slots语句查看有没有对应的 slot 。如下图所示:

    1752148655730910.png

    3)使用SELECT PG_DROP_REPLICATION_SLOT('slot_test');语句删除对应的 slot 。如下图所示:

    1752148728291432.png

    3. 后续步骤

    在配置好数据库后,即可完成数据源配置。

    1)需要在使用数据管道进行实时同步任务配置前,在 FineDataLink 中配置好需要同步的源端和目标端数据库数据连接,以便在同步任务配置过程中,通过选择数据源名称来控制同步任务,详情参见:配置KingBaseES(MySQL模式)数据源配置KingBaseES(SqlServer模式)数据源

    2)然后设置数据管道任务即可,详情参见:配置数据管道任务



    附件列表


    主题: 数据管道
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持