You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DBeaver数据传输向导跨库传输时忽略BLOB问题咨询

HSQL到MySQL迁移时BLOB数据被忽略的问题分析与解决

这是DBeaver 22.3.0版本数据迁移工具的已知兼容性问题,并非你的操作错误。

问题原因

DBeaver的跨数据库迁移引擎对HSQL和MySQL的二进制类型映射、数据流传输处理存在缺陷:

  • HSQL的BLOB类型通过2.7.1版本驱动返回的二进制数据流,在DBeaver迁移流程中未被正确捕获和转译到MySQL的BLOB/LONGBLOB类型字段。
  • 默认迁移配置中,二进制数据的传输开关未被启用,导致引擎直接跳过BLOB字段。

更高效的替代方案

  1. 调整DBeaver迁移的类型映射规则
    在迁移向导的「数据映射」步骤中:

    • 找到HSQL的BLOB类型,手动映射到MySQL的LONGBLOB(避免大二进制数据长度限制)。
    • 勾选对应字段的「保留二进制数据」选项(部分版本需在高级设置中开启)。
  2. 用HSQL内置命令生成兼容脚本
    在HSQL的SQL编辑器中执行:

    SCRIPT 'full_mysql_dump.sql' BINARY AS BASE64;
    

    生成的SQL脚本会将BLOB数据转为Base64字符串,直接导入MySQL即可自动解析,无需手动修改。

  3. 批量导出含BLOB的表
    在DBeaver中选中所有需要迁移的表,使用「数据导出」功能:

    • 选择导出格式为「SQL」。
    • 在导出设置中开启「导出二进制数据为Base64」选项。
      生成的批量脚本可直接导入MySQL,比单表导出效率更高。

版本优化提示

DBeaver 23.x及以上版本对跨数据库二进制类型迁移做了针对性修复,如果可以升级DBeaver,能直接解决这个问题,无需额外操作。

内容的提问来源于stack exchange,提问作者scoulou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 05:45:38