注册
处理数据迁移时报错记录超长的问题
专栏/技术分享/ 文章详情 /

处理数据迁移时报错记录超长的问题

Ÿ 2025/01/07 615 0 0
摘要

问题描述

从Oracle迁移到DM数据库的时候,初始化实例时页大小设置为8k,但是实际迁移时有多张表报错记录超长;源表字段类型最大设置为VARCHAR2(3200),并没有超过4000的限制,按理说应该是可以进行迁移的。

原因分析

后来,排查了下发现是页大小设置的问题,不同的页大小所支持的存储长度有所不同,所存储内容长度,不能超过定义长度的一半。解决上述问题最好的处理方式是重新初始化达梦数据库,修改页大小为32k。

解决方案

本文主要介绍下我使用SQLark工具如何解决上述问题。附上下载链接:www.sqlark.com

初始化参数检查

首先使用SQLark进行迁移,迁移前会对目的库进行一次全面的参数检查,能够很大程度上避免因为参数设置问题导致的迁移失败、系统功能运行失败、数据展示异常等问题;如需修改参数项,也可参考【环境检查】页面提供的改写建议进行重新配置。
在迁移之前,SQLark 的 环境检查 可以提供一套包含空间、字符集编码、页大小等 10 多项参数的全面的环境检查清单,并且在本环节将显示各检查项的检查结果。若存在失败或告警项,我们可以点击 如何操作,按照操作引导修改初始化参数,修改完成后可以重新检查。

image.png

配置字段映射规则

如果目的库无法更改,我们可在迁移前手动配置字段映射规则,设置目标库的字段精度扩大n倍。接下来我将简单介绍下SQLark的字段映射配置。

1、功能入口

在选择迁移范围/配置环节,点击当前生效映射规则,可查看正在应用的映射规则,SQLark 提供系统默认字段映射规则和自定义字段映射规则。

2、查看系统默认规则

SQLark 内置了 2 套基于达梦专家经验的默认字段映射规则 (Oracle 和 MySQL),自动转换迁移到达梦的表字段类型,这些规则会自动应用于数据迁移过程中。需要注意:系统默认规则不可修改。

image.png

3、添加字段映射规则

SQLark 支持对现有的自定义规则进行编辑或新增规则,我们可通过以下步骤进行操作:

  1. 点击 开启编辑 按钮,进入自定义规则配置页面后,点击 添加规则,即可新一条字段映射规则。
  2. 设置各项自定义参数值:
    image.png
  3. 设置完成后,点击 保存,该规则将保存成功;点击保存并应用于本任务,该规则将立即应用到当前迁移任务中。
评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服