达梦数据库下载地址:https://eco.dameng.com/download
达梦数据库安装文档:https://eco.dameng.com/document/dm/zh-cn/start/dm-install-linux.html

数据迁移SQLark工具使用

首先,本次MySQL迁移使用了SQLark工具

1.下载安装SQLark

https://ask.sqlark.com

在这里插入图片描述

2.选择MySQL -> DM

在这里插入图片描述

3.测试MySQL连接

在这里插入图片描述

4.选择需要迁移的数据库

在这里插入图片描述

5.分析数据库

在这里插入图片描述
在这里插入图片描述

6.连接目标数据库

在这里插入图片描述

7.选择全量迁移

在这里插入图片描述

8.处理不通过问题(也可以不处理直接先迁移后单个处理)

在这里插入图片描述

9.迁移完成(处理异常)

在这里插入图片描述

常见问题

问题一:非法的基类名[SYSGEO]

原因:达梦数据库中没有该空间函数,可能需要安装响应插件(需要联系达梦客服解决)
解决:临时解决办法有先改写成VARCHAR类型存储(不过有个问题,WKT数据会变成十进制数据)

问题二:数据溢出 DECIMAL(38,30)

原因:由于MySQL中数据长度过长,达梦数据库DECIMAL最大限制为(38,30)
解决:临时解决办法有先改写成VARCHAR类型存储

问题三:无效的表或视图名[T_RUN_ALL_FILE_INFO]

在这里插入图片描述

解决1:

加上双引号即可

在这里插入图片描述
解决2:
生成实例时关闭大小写敏感

CASE_SENSITIVE=n 关闭
CASE_SENSITIVE=y 开启

./dminit path=/dmdata/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=n CHARSET=1 DB_NAME=DMTEST INSTANCE_NAME=DBSERVER PORT_NUM=5236 SYSDBA_PWD=Jsjm123.0  SYSAUDITOR_PWD=Jsjm123.0

问题四:dbType not support : dm

解决:

druid:
  filters: stat

在这里插入图片描述

问题五:dmgeo.st_astext(wkb)括号前空格问题

在这里插入图片描述

解决:直接匹配替换

空格替换 以及 MULTIPOLYGON多个点的时候逗号后面也会出现空格,也替换掉!!!

SELECT REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(dmgeo.st_astext(SmGeometry), 'POINT (', 'POINT('), 'LINESTRING (', 'LINESTRING('), 'POLYGON ((', 'POLYGON(('), 'MULTIPOLYGON (((', 'MULTIPOLYGON((('), ', ', ','), * FROM address;

在这里插入图片描述
在这里插入图片描述

问题六:mybatis使用map接收返回数据时出现字段全是大写

只需要配置resultMap对应接收即可,或写实体类来接收
用map接收就用resultMap,实体类用resultType

在这里插入图片描述

问题七:mybatis查询使用map接收返回数据时出现的类型报错

在这里插入图片描述
只需要用CAST(file_path as VARCHAR) as filePath包裹即可

问题X:待补充···

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐