MySQL迁移到达梦数据库实战(使用达梦的DTS迁移工具)

2023-09-15 16:17:31

1.mysql源库授权
grant select on *.* to dm_read@'%' identified by 'password';
flush privileges;
2.设置数据类型映射
设置varchar 按字符存储 ,char也改成varchar char ,(选择强制为字符存储为是,意思是mysql定义的varchar(n)或者char(n),达梦端映射为varchar(n char))json 映射为 clob
说明:mysql的varchar(1)可存储一个汉字,但是达梦的varchar(1)不能存储一个汉字,varchar(2) 或 varchar(1 char ) 可存储一个汉字
需要增加json ->clob 的映射,达梦没json 类型,达梦使用clob 存储json 数据+json函数来实现相应功能

达梦端varchar(n char)测试:
SQL> create table test1( name varchar(1));
executed successfully

SQL> insert into test1 values('集');
insert into test1 values('集');
[-6169]:Column [name] out of length.

SQL> create table test2( name varchar(1 char));
executed successfully
used time: 6.702(ms). Execute id is 2821801.
SQL> insert into test2 values('集');
affect rows 1

3,源端连接配置:
在迁移出点击新建迁移任务。这一步已经指定了需要迁移的源端库,目前只支持一个任务迁移一个库,暂不支持多个源端库同时进行迁移

4,目标端连接配置
目的端用户只需要有对要操作的schema有权限的用户即可,非必须是SYSDBA

5,指定源端及目标端迁移对象

说明:需要提前在目标端建立对应的用户、模式(用户创建后会自动创建同名模式)

注意:勾选保持对象名大小写,并取消勾选默认类型映射关系

这里一定要勾选保持对象名大小写,如果不沟通,工具分析对象任务就会失败,因为Mysq的表和视图名都是小写,工具如果按照大写去分析,会报找不到这个表而失败

6.

迁移对象配置,可同时迁移表结构及数据

注意按照如下截图进行勾选

说明:

  1. 可根据实际情况,如二次迁移,可勾选【如果目的表已存在,先删除】
  2. 请勿勾选【使用AUTO_INCREMENT自增列】选项,会导致用户使用管理工具访问数据库时出现无法打开表定义情况,不勾选会使用如下方式创建自增列,可实现与mysql一样功能
  3. 注意要勾选应用当前选项到同类对象,不让设置只会应用到当前选择的表或者视图

7,迁移完成

确认是否有报错,有需要根据情况进行处理,直至全部成功

原表有N行数据,必须N行全部插入到目标端,任务才会成功,否则失败。

1)表迁移失败的原因一般都是目标端某列字段比源字段短,造成插入失败,需要设置上一步的“如果目标表已存在,先删除”,

2)视图迁移失败的原因一般是视图中查询了其他数据库或者用户下的表,而该表在达梦中不存在或者没有赋权,造成视图创建失败。、

3)创建唯一性索引失败的原因是,Mysql在存在主键的情况下还允许创建唯一性约束,而达梦不允许,索引会报错。这种情况不用处理,忽略即可。

错误消息: 违反唯一性约束

---------------------------------
ALTER TABLE "TKOMS"."c_training_records" ADD UNIQUE("op_ad","training_time","training_type")

失败的表和视图根据报错,重新迁移即可。

更多推荐

电工-三极管主要参数(直流、交流、极限)

三极管主要参数(直流、交流、极限)三极管的主要参数分为三种,即直流参数、交流参数和极限参数,下面分别介绍:直流参数·共发射极直流放大倍数β=Ic/Ib·集电极—基极反向截止电流Icbo,Ic=0时,基极和集电极间加规定反向电压时的集电极电流。Icb越小,说明三极管的集电结质量越好。·集电极—发射极反向截止电流Iceo(

webpack常用配置与性能优化插件

webpack是一个流行的前端项目构建工具(打包工具),可以解决当前web开发中所面临的困境。提供了友好的模块化支持,以及代码压缩混淆、处理js兼容问题、性能优化等强大的功能,从而让程序员把工作的重心放到具体的功能实现上,提高开发效率和项目的可维护性。直接代码加注释/***各个webpack版本之间存在一定差异,经常报

ADB底层原理

介绍adb的全称为AndroidDebugBridge,就是起到调试桥的作用。通过adb我们可以在Eclipse/AndroidStudio中方便通过DDMS来调试Android程序,说白了就是debug工具。adb是androidsdk里的一个工具,用这个工具可以直接操作管理android模拟器或者真实的androi

Sftp服务安全评估

1认识SFTPFTP(SSH文件传输协议)和FTP(文件传输协议)是两种用于文件传输的协议,它们在工作原理、安全性和配置方面有很大的差异。1)工作原理:FTP:FTP使用两个独立的连接(控制连接和数据连接)来传输文件。控制连接用于发送命令和处理身份验证,而数据连接用于传输文件内容。SFTP:SFTP是通过SSH协议进行

安全基础 --- nodejs沙箱逃逸

nodejs沙箱逃逸沙箱绕过原理:沙箱内部找到一个沙箱外部的对象,借助这个对象内的属性即可获得沙箱外的函数,进而绕过沙箱前提:使用vm模块,实现沙箱逃逸环境。(vm模式是nodejs中内置的模块,是nodejs提供给使用者的隔离环境)目的:拿到process模块实现沙箱逃逸,拿到目标(1)Function构造函数实现源

求 2+22+222+2222+...+22..·22(n个2)(精确计算)

目录(1)求2+22+222+2222+...+22..·22(n个2)(精确计算)计算机组成原理与操作系统之间区别乘式还原,有乘法运算如下OOOXOO--------OOOOOOOO-------------OOOOO式中18个O位置上的数字全部是素数(2,3,5或7),请还原这算式(1)求2+22+222+2222

vue学习-02vue入门之组件

删除Vue-cli预设在用户根目录下(C:\Users\你的用户名)这个地址里有一个.vuerc文件,修改或删除配置组件Props(组件之间的数据传递)Prop的大小写(camelCasevskebab-case)不敏感Prop类型:StringNumberBooleanArrayObjectDateFunctionS

方案:AI赋能,森林防火可视化智能监管与风险预警系统解决方案

一、方案背景森林火灾是世界八大自然灾害之一,具有发生面广、突发性强、破坏性大、危险性高、处置扑救特别困难等特点,严重危及人民生命财产和森林资源安全,甚至引发生态灾难。有效预防和及时控制森林火灾是保护国家生态建设成果、推进生态文明建设的重要措施。监管痛点:1)现有的森林防火监测系统落后,以人工地面巡护、瞭望塔高点巡查为主

【群晖NAS】Synology drive套件安装设置与结合内网穿透实现远程访问——“cpolar内网穿透”

文章目录前言1.群晖SynologyDrive套件的安装1.1安装SynologyDrive套件1.2设置SynologyDrive套件1.3局域网内电脑测试和使用2.使用cpolar远程访问内网SynologyDrive2.1Cpolar云端设置2.2Cpolar本地设置2.3测试和使用3.结语前言群晖作为专业的数据

【基础篇】六、基于SpringBoot来整合SSM的案例(下)

文章目录1、前后端调用:axios发送异步请求2、添加功能3、删除功能4、修改功能5、异常消息处理6、分页功能7、分页Bug处理8、条件查询接下来加入前端页面,使用axios发送异步请求调用上篇的接口。调前端代码时,发现还挺有趣,刷新、隐藏、调用、以及一些交互逻辑的代码翻译,等框架学完看看前端的东西。1、前后端调用:a

学习视觉SLAM需要会些什么?

前言SLAM是现阶段很多研究生的研究方向,我也是作为一个即将步入视觉SLAM的研究生,网上对于SLAM的介绍很多,但很少有人完整系统的告诉你学习视觉SLAM该有那些基础,那么此贴将告诉你学习SLAM你要有那些方面的基础。文章目录前言1.经典视觉SLAM的框架2.高等数学、线性代数、概率论、矩阵论3.C++语法基础4.L

热文推荐