数据迁移DTS | 云上MySQL 数据库迁移至达梦数据库

2024-03-01 23:20

本文主要是介绍数据迁移DTS | 云上MySQL 数据库迁移至达梦数据库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

引入

云上 MySQL 数据库 —> 向达梦国产化数据库迁移

image.png

下载&安装

达梦客户端工具 DM->可参考之前国产化专栏达梦文章

创建模式

在客户端分别依次执行以下命令脚本(这里没有通过客户端管理工具去创建达梦数据库的模式,当然也可以通过图形化界面去创建模式)

CREATE TABLESPACE
YD_KNOW DATAFILE
'YD_KNOW.DBF' SIZE 128;CREATE USER YD_KNOW 
IDENTIFIED BY
"YD_KNOW123456"
DEFAULT TABLESPACE
YD_KNOW;GRANT RESOURCE TO
YD_KNOW;

上述,以 YD_KNOW 为例。

可视界面化 数据迁移DTS

接着,打开 DM8 数据迁移 DTS 工具:

image.png

建立迁移作业

打开主页即点击“🏠”,新建工程,建立迁移作业-任务如下

image.png

选择迁移方式

选择迁移方式:同构数据库 VS 异构数据库

这里选择 MySQL ===> DM

image.png

源数据库

输入源数据库信息:主机名+端口+用户名+密码+库名称

image.png

这里,使用默认版本可能会出现 jdbc 连接异常

image.png

我们指定高驱动版本8即可

image.png

目标数据库

输入迁移目标数据库信息:主机名+端口+用户名+密码

image.png

指定对象复制或查询

指定迁移对象,这里可选择之前建立好的,当然,也可以通过工具去建立到新的模式下

image.png

温馨提示:源模式选择源库名称,目标模式选择之前创建好的,迁移到你对应需要的目标模式即可。

指定迁移对象表结构以及数据

image.png

数据迁移过程

image.png

我们看看迁移情况,不出所料有成功的也有异常的

image.png

image.png

这里调整字段属性的长度定义即可,之前在国产化专栏中已有介绍处理方式,不再赘述!

迁移统计情况

image.png

我们可以查阅整体的迁移情况,以及相关日志的查阅,便于排查数据的迁移异常分析

image.png

归纳&&总结

数据库迁移&异构性兼容:本身数据库迁移,其实是一项复杂的任务。在源库到目标库迁移的过程中,由于多方面因素,就比如数据库表属性上存放的内容在各个数据库体系中所占的位宽都可能存在差异,还有比方说同样在 utf-8 的字符集下存放中文的个数也有所不同,需要我们详细规划,也需要我们仔细留意,细致执行。

归纳:
数据转换和兼容性:将数据从源数据库迁移到目标数据库时,其中数据结构、属性类型、字段索引、约束和关系等可能需要作出调整以适应并匹配目标数据库的模型。

数据恢复和完整性:将数据从源数据库迁移到目标数据库时,有可能出现异常中断,或者出现数据丢失。针对异常的情况进行分析,予以人工干预,检测并修复数据以确保数据的完整性。

从源库到目标库的迁移过程中,考虑目标库的高性能和高可扩展性,不同的 DBMS 可能具有不同的特性和扩展性能力,可能会出现一定性能损失,还有确保数据的安全,以及对整个迁移作业进行管理和监控,这些都是极其重要的考量因素。

总结:
可以通过各厂家提供的迁移工具,进行自动化和转换数据类型格式,以此保障数据的完整性、准确性。

同时,建议各提供商通过一系列机器学习算法,加强对数据格式类型自动化转换、数据内容可靠性训练能力。

通过数据库性能优化工具和技术,对数据库不断进行调优,以提高迁移到目标库后系统的高性能和高可扩展性。

在一定程度上,去减少需要我们人工干预并提高准确性的工作量,使得整个数据库迁移过程可视化出来、更高效、更准确、更可靠!

关注了解更多国产化适配内容实践回顾

                                  推荐阅读

在国产化面前 | 我们应该如何面对?

分布式数据库 | 浅谈OB演进的一点思考

浅谈 | DBA与架构的一次对话交流

开源数据库 | 记一次多方式连接 openGauss 实践之旅

openEuler+openGauss|记一次基于鲲鹏欧拉搭建 openGauss 实践过程

这篇关于数据迁移DTS | 云上MySQL 数据库迁移至达梦数据库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/764169

相关文章

MyBatis-Plus通用中等、大量数据分批查询和处理方法

《MyBatis-Plus通用中等、大量数据分批查询和处理方法》文章介绍MyBatis-Plus分页查询处理,通过函数式接口与Lambda表达式实现通用逻辑,方法抽象但功能强大,建议扩展分批处理及流式... 目录函数式接口获取分页数据接口数据处理接口通用逻辑工具类使用方法简单查询自定义查询方法总结函数式接口

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

MySQL深分页进行性能优化的常见方法

《MySQL深分页进行性能优化的常见方法》在Web应用中,分页查询是数据库操作中的常见需求,然而,在面对大型数据集时,深分页(deeppagination)却成为了性能优化的一个挑战,在本文中,我们将... 目录引言:深分页,真的只是“翻页慢”那么简单吗?一、背景介绍二、深分页的性能问题三、业务场景分析四、

MySQL 迁移至 Doris 最佳实践方案(最新整理)

《MySQL迁移至Doris最佳实践方案(最新整理)》本文将深入剖析三种经过实践验证的MySQL迁移至Doris的最佳方案,涵盖全量迁移、增量同步、混合迁移以及基于CDC(ChangeData... 目录一、China编程JDBC Catalog 联邦查询方案(适合跨库实时查询)1. 方案概述2. 环境要求3.

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

全面掌握 SQL 中的 DATEDIFF函数及用法最佳实践

《全面掌握SQL中的DATEDIFF函数及用法最佳实践》本文解析DATEDIFF在不同数据库中的差异,强调其边界计算原理,探讨应用场景及陷阱,推荐根据需求选择TIMESTAMPDIFF或inte... 目录1. 核心概念:DATEDIFF 究竟在计算什么?2. 主流数据库中的 DATEDIFF 实现2.1

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

浅谈mysql的not exists走不走索引

《浅谈mysql的notexists走不走索引》在MySQL中,​NOTEXISTS子句是否使用索引取决于子查询中关联字段是否建立了合适的索引,下面就来介绍一下mysql的notexists走不走索... 在mysql中,​NOT EXISTS子句是否使用索引取决于子查询中关联字段是否建立了合适的索引。以下