浅谈mysql数据库迁移至国产化达梦数据库

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: 项目要求mysql数据库数据需要转到达梦数据库,对于达梦数据库的了解尚且不多,一开始使用手动转SQL脚本,效率极低,非常容易出错。达梦数据库的资料实在有限,经过后期研究,发现原来DM已经有自己的数据迁移工具,使用之后非常方便。对mysql数据库转达梦数据库的操作流程做一个简要分享。

1、首先我们需要在本地安装达梦数据库,安装好达梦数据库之后,便可以在开始->所有工具->达梦数据库中看到它自带的各种操作工具,如图所示:
1.png

2、创建项目工程
选择DM数据迁移工具,然后点击进入,在迁移管理里右键新建工程
image.png
输入工程名称,名称可以随便写,不影响后续操作
image.png

3、在项目下新建迁移
然后选中项目下的迁移,右键新建迁移,自定义迁移名称,点击确定
image.png

4、配置迁移内容
点击新建的迁移可以看到如下页面,并点击下一步:
image.png
然后选择mysql ==> DM7,点击下一步
image.png
输入对应的mysql数据库信息,点击刷新会自动从连接的数据库中带出数据库名,可下拉选择要迁移的数据库
注意指定驱动项需要mysql的驱动包,除了DM的包不需要导入之外,其他的都要,也就是这个,请选择合适自己数据库驱动包
image.png
image.png
选择迁移数据库后,点击下一步
image.png

输入DM的相关信息,此时指定驱动不需要选择,因为DM自带了自己的包,点击下一步
image.png
在目的模式选择需要mysql需要导入到对应的DM的数据库名称,如果还没有先去DM数据库创建数据库名称。
选中之后点击下一步
image.png

点击选择,就会全部选中,也就是你全部mysql的表都会被导入,然后点击下一步
image.png
然后显示的是详细信息,然后点击完成即可
image.png
完成之后便成功的将mysql导入进DM数据库啦!

5、mysql适配达梦数据库一些注意事项:
5.1达梦数据库jdbc驱动版本
因为使用 低版本的驱动,在sql语句上的写法可能会不同,例如查询时要加上模式名等
解决方法: 使用下面这个版本驱动,sql语句大部分和mysql一样

com.dm
jdbc
1.8

5.2达梦不支持mysql默认时间函数
使用达梦数据库字段的迁移工具,从mysql迁移数据库到达梦里时,如果mysql里表的时间字段设置了默认值,使用的是CURRENT_TIMESTAMP函数,在达梦8里迁移会报错,达梦7可正常迁移。
解决方法: 先将mysql中的表的默认值去掉,把表结构导过去之后,再在达梦中执行语句alter table 表名 modify 字段名 default sysdate
5.3达梦数据库不支持某些mybatis字符串的拼接写法
mybatis里"%“#{name}”%"这种写法达梦数据库会报错
解决方法: 使用函数CONCAT(‘%’,#{name},‘%’),双引号变成单引号
5.4达梦数据库与mysql数据库部分区别:
--创建表的时候,不支持在列的后面直接加 comment 注释,使用 COMMENT ON IS 代替
--不支持 date_sub 函数,使用 dateadd(datepart,n,date) 代替
--不支持 date_format 函数
--不支持 substring_index 函数等
5.5如果在解决函数适配问题时,直接找不到和MySQL对应的函数,可以看下oracle的相关函数,达梦数据库和 oracle 数据库比较像

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
24天前
|
数据库
【赵渝强老师】达梦数据库实例的状态
达梦数据库实例包含NORMAL、PRIMARY和STANDBY三种模式,以及MOUNT、OPEN和SUSPEND三种状态。模式之间可在MOUNT状态下相互转换,不同状态与模式适用于数据库的启动、配置及运行需求。
|
5月前
|
Cloud Native 关系型数据库 分布式数据库
阿里云PolarDB与沃趣科技携手打造一体化数据库解决方案,助推国产数据库生态发展
阿里云瑶池数据库与沃趣科技将继续深化合作,共同推动国产数据库技术的持续创新与广泛应用,为行业生态的繁荣注入更强劲的技术动力。
阿里云PolarDB与沃趣科技携手打造一体化数据库解决方案,助推国产数据库生态发展
|
7月前
|
SQL 数据库 Docker
【赵渝强老师】在Docker中运行达梦数据库
本文介绍了在Docker容器中部署达梦数据库(DM 8)的具体步骤,包括创建文件夹、下载安装包、导入镜像、启动容器、登录数据库及查看状态等操作。同时,通过视频讲解辅助理解。文中还分析了将数据库服务容器化的潜在问题,如数据安全性、硬件资源争用、网络带宽占用和额外隔离带来的挑战,指出数据库服务在生产环境中可能不适合容器化的原因。
369 4
【赵渝强老师】在Docker中运行达梦数据库
|
7月前
|
SQL 缓存 分布式数据库
【赵渝强老师】达梦数据库的线程结构
达梦数据库采用单进程、多线程结构,利用对称服务器架构实现高效资源利用与可扩展性。其核心线程类型包括监听线程(管理客户端连接)、I/O线程(处理数据页读写)、工作线程(执行数据操作)、调度线程(定时任务管理)和日志刷新线程(确保REDO日志刷盘)。通过合理分工与同步机制,达梦数据库实现了高性能与稳定性。视频讲解进一步详细介绍了各线程的功能与协作方式。
166 1
【赵渝强老师】达梦数据库的线程结构
|
6月前
|
SQL 运维 监控
数据库国产化选型?YashanDB 给中大型企业的五个答案
近两年,“国产数据库”成为企业数字化升级的重要议题。YashanDB作为新一代国产关系型数据库,以完整产品矩阵解决企业核心关切:通过图形化工具提升开发效率;提供自动化迁移平台简化数据库切换;云管理工具减轻运维负担;支持复杂业务场景;拥有成熟团队保障企业级服务。YashanDB不仅是“可替代”,更是“更可靠”的选择,助力企业实现高效、可控的数据库升级。
|
7月前
|
存储 SQL NoSQL
【赵渝强老师】达梦数据库的逻辑存储结构
本文介绍了达梦数据库的存储结构,包括逻辑和物理存储两部分。逻辑存储结构由数据库(Database)、表空间(Tablespaces)、段(Segments)、簇(Cluster)和页(Page)组成。数据库是最大逻辑单元,包含所有表、索引等;表空间由数据文件组成,用于存储对象;段由簇构成,簇包含连续的数据页;页是最小存储单元。文中还提供了查询表空间、段和页大小的SQL语句,并附有视频讲解和示意图。
257 7
|
7月前
|
存储 SQL 数据库
【赵渝强老师】达梦数据库的数据库对象
达梦数据库包含基本与复杂两大类数据库对象。基本对象如表、索引、视图、序列和同义词,通过单一DDL语句创建和管理。表是数据存储核心,支持多种数据类型;索引提升查询速度,常见类型包括聚集、唯一、函数等索引;视图提供虚表功能;序列生成有序整数;同义词简化对象访问。复杂对象包括存储过程、函数和触发器,需用DMSQL语言开发,适用于更复杂的业务逻辑处理。文中通过实例详细介绍了各类对象的创建与使用方法。
320 3
|
7月前
|
SQL 存储 缓存
【赵渝强老师】达梦数据库的内存结构
本文介绍了达梦数据库管理系统的内存结构,包括内存池、缓冲区、排序区和哈希区。内存池分为共享内存池和运行时内存池,能够提高内存申请与释放效率,并便于监控内存使用情况。缓冲区涵盖数据缓冲区、日志缓冲区、字典缓冲区和SQL缓冲区,用于优化数据读写和查询性能。排序区和哈希区分别提供排序和哈希连接所需的内存空间,通过合理配置参数可提升系统效率。文内附有具体配置示例及视频讲解,帮助用户深入理解达梦数据库的内存管理机制。
172 0
|
7月前
|
存储 SQL 安全
【赵渝强老师】达梦数据库的物理存储结构
本文介绍了达梦数据库的存储结构及各类物理文件的作用。达梦数据库通过逻辑和物理存储结构管理数据,包含配置文件(如dm.ini、sqllog.ini)、控制文件(dm.ctl)、数据文件(*.dbf)、重做日志文件(*.log)、归档日志文件、备份文件(*.bak)等。配置文件用于功能设置,控制文件记录数据库初始信息,数据文件存储实际数据,重做日志用于故障恢复,归档日志增强数据安全性,备份文件保障数据完整性,跟踪与事件日志辅助问题分析。这些文件共同确保数据库高效、稳定运行。
293 0
|
7月前
|
存储 SQL 并行计算
【赵渝强老师】达梦数据库MPP集群的架构
达梦数据库提供大规模并行处理(MPP)架构,以低成本实现高性能并行计算,满足海量数据存储和复杂查询需求。DM MPP采用完全对等无共享体系,消除主节点瓶颈,通过多节点并行执行提升性能。其执行流程包括主EP生成计划、分发任务、各EP并行处理及结果汇总返回。为确保高可用性,建议结合数据守护部署。
167 0

推荐镜像

更多