新闻详情

新闻详情

首页 / 资讯中心 / 详情

DTS迁移总结

发布时间:2026/9/29 15:10:27来源:尧图网络
DTS迁移总结
DTS迁移总结达梦数据库有限公司2021年5月22目录1 从0到1的迁移顺序选择... 11.1 先搭建骨架... 11.2 重点迁移的地方... 21.3 迁移其余对象... 42 遭受问题的解决办法... 52.1 禁止创建位图索引... 52.2 违反唯一性约束... 62.3 触发器创建报错... 7从0到的迁移顺序选择对于该问题我们首先要清楚应该知道DTS迁移有哪些对象可选在第一张图可以看到有目录表空间上下文用户角色资源限制模式表视图物化视图序列存储过程函数触发器包类同义词模式内的或公共同义词自定义类型。在上面这些中最重要的就是表而表相关的迁移对象如第二张图大致包括表数据表定义即表的结构表的约束主键索引对象权限和注释。先搭建骨架对于DTS迁移我们常常要求用户表空间模式用户权限由操作人员先手动准备好。在实际执行过程中首先第一步就是建立表空间表空间的建立基于原本空间的大小例如从oracle迁移到达梦那么假如oracle里元数据为10G那么先在达梦中创建一个上限13G的表空间非常合理因为同样的数据在不同数据库中存储大小可能不同所以需要稍微大一点。用户模式用户权限同样基于现实情况而定。用户和模式跟着源库而用户权限对于一般的用户resource、public、vti、soi、svi角色的权限就足够。对于DBA权限要和用户沟通之后才可以赋予几种权限的功能如下。重点迁移的地方对于数据迁移最重点的就是表和数据的迁移在本次迁移实践中我切实体会到了这一点。在这一块迁移顺序大致为序列表结构表数据表主键、索引、约束和对象权限。首先讲一下原因原因非常简单就是要满足一个依赖关系的确立以及一个效率的问题。表结构的建立可能会用到序列表数据的迁移必定需要表结构先建立这些是依赖关系的一面先迁移表数据再迁移主键约束索引等可以减少判断的开销加强效率。迁移序列转换界面如此配置因为LAST_NUMBER并不准确使用下一个值是标准的做法。迁移表结构标准做法迁移数据处理完迁移数据的问题之后才可以进行迁移主键约束和索引标准做法如下迁移其余对象其余对象指的是视图物化视图存储过程函数触发器包类同义词模式内的或公共同义词自定义类型。这些对象可以分为两层来看。首先第一层是同义词自定义类型第二类是其他的。跟之前一样他们之间的分类基于依赖关系第二层需要第一层全部建好加上足够的权限。例如触发器可能需要用到自定义类型和同义词。标准操作如下。遭受问题的解决办法这里具体讲一下我遇到问题如何解决。禁止创建位图索引错误号: -3276错误消息:第2行附近出现错误:禁止创建位图索引---------------------------------CREATE BITMAP INDEX INDEX_CHECKTIMEON AMSDATA.AMS_CHECK_RECORD(FIRST_CHECKTIME,LAST_CHECKTIME,FIRST_CHECKSTATUS,LAST_CHECKSTATUS,CHECK_STATUS);错误号: -3276错误消息:第2行附近出现错误:禁止创建位图索引---------------------------------CREATE BITMAP INDEX INDEX_UMIDON AMSDATA.AMS_EMPDATA(UM_ID);首先我要先搞清楚原因先核对SQL语句首先通过报错锁定原因既然报错为禁止创建位图索引那么不是语法问题首先就要去看参数是否是对的在这一步就需要去查看DBA手册中相关的参数。违反唯一性约束错误号: -6612错误消息:违反唯一性约束---------------------------------CREATE UNIQUE INDEX INDEX_ARCHIVE_ID_USERON OADATA.OA_HI_ARCHIVE(APPROVE_ID);错误号: -6612错误消息:违反唯一性约束---------------------------------ALTER TABLE OADATA.ACT_GE_BYTEARRAY ADD CONSTRAINT NOT CLUSTER PRIMARY KEY(ID_) ;首先知道了具体的报错之后我要到现场去验证这里就需要具体问题具体分析例如上面的违反唯一性约束用下列语句查询。然后必须要当原本的源库上面同样查找这样才可以更加全面的了解。--查找所有重复的APPROVE_ID及其出现次数SELECT APPROVE_ID, COUNT(*) AS重复次数FROM OADATA.OA_HI_ARCHIVEGROUP BY APPROVE_IDHAVING COUNT(*) 1;这里我查出来的结果是oracle源库和达梦的不同类型条数是一样的。原因为网络中断后重新执行报错任务导致之前的任务被重新迁移了一遍。导致数据重复删掉重复的数据。然后重试。DELETE FROM OADATA.OA_HI_ARCHIVEWHERE ROWID NOT IN (SELECT MIN(ROWID) FROM OADATA.OA_HI_ARCHIVE GROUP BY ID);DELETE FROM OADATA.OA_HI_ARCHIVEWHERE ROWID NOT IN (SELECT MIN(ROWID) FROM OADATA.OA_HI_ARCHIVE GROUP BY APPROVE_ID);DELETE FROM OADATA.ACT_GE_BYTEARRAYWHERE ROWID NOT IN (SELECT MIN(ROWID) FROM OADATA.ACT_GE_BYTEARRAY GROUP BY ID_);DELETE FROM OADATA.OA_MAILWHERE ROWID NOT IN (SELECT MIN(ROWID) FROM OADATA.OA_MAIL GROUP BY ID);DELETE FROM OADATA.OA_TASK_CENTER_TASKWHERE ROWID NOT IN (SELECT MIN(ROWID) FROM OADATA.OA_TASK_CENTER_TASK GROUP BY ID);触发器创建报错对于之类创建的问题最重要的就是要拿到两边的DDL语句。对于达梦的可以直接在DTS工具里面复制然后到DM管理工具里面执行看一下具体的报错。DDL语句如下对于oracle用下列语句查找得到DDL之后原因就明了了。SELECT DBMS_METADATA.GET_DDL(TRIGGER, YOUR_TRIGGER_NAME) FROM DUAL;
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【强烈推荐】MCP模型上下文协议:AI开发者必备的标准化连接方案与TaoToken统一Key配置实战 2026/9/29 20:50:53

【强烈推荐】MCP模型上下文协议:AI开发者必备的标准化连接方案与TaoToken统一Key配置实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
ISO 26262安全分析实战:从HARA、FMEA到FTA与DFA的系统方法 2026/9/29 20:50:46

ISO 26262安全分析实战:从HARA、FMEA到FTA与DFA的系统方法

前两年给一个域控制器项目做功能安全预研,第一版安全分析报告交上去之后,评审专家只回了一句话:“你们的安全目标写得不少,但哪一个是分析出来的,哪一个是想当然拍出来的?”当场就把我问住了。从那以后&…

阅读更多 →
用Dify Workflow编排智能体,自动化生成小红书文案的实践指南 2026/9/29 20:50:46

用Dify Workflow编排智能体,自动化生成小红书文案的实践指南

简介:面向AI智能体开发初学者的Dify Workflow入门教程,以小红书文案自动生成为案例,完整演示从输入关键词、风格、标题数量到产出定制文案和标题的工作流。PDF文档按节点拆解:开始节点确定输入变量,LLM节点调用大模型生…

阅读更多 →
【AI大模型】日志排查:通过报错日志快速定位问题方法 2026/9/29 20:50:40

【AI大模型】日志排查:通过报错日志快速定位问题方法

【AI大模型】日志排查:通过报错日志快速定位问题方法 写在前面:报错日志是你的第一现场 很多开发者在跑 AI 项目时,最怕的不是“报错”,而是“报了一屏看不懂的错”。于是要么凭感觉乱改,要么把整段日志扔给 AI 问“这是什么意思”。其实,每一段报错日志都是定位问题的…

阅读更多 →
速看!微信可以连接 OpenClaw 了(附 TaoToken 配置教程) 2026/9/29 20:50:40

速看!微信可以连接 OpenClaw 了(附 TaoToken 配置教程)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
数据库数据世界的逻辑基石:Armstrong公理系统全解析 2026/9/29 20:50:40

数据库数据世界的逻辑基石:Armstrong公理系统全解析

数据世界的逻辑基石:Armstrong公理系统全解析 如果你曾接触过数据库设计,一定听说过“范式”和“函数依赖”。但你是否想过:给定一组已知的函数依赖,如何系统地推导出所有被隐含的其他依赖? 直接根据定义去验证每个依赖…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉