注册
oracle数据迁移到达梦数据库
培训园地/ 文章详情 /

oracle数据迁移到达梦数据库

习惯🍃 2022/11/17 5047 0 0

迁移背景:
国产化推进,oracle数据库迁移到达梦数据库
迁移场景分为以下几种情况
场景一:oracle与dm数据库能互联
场景二:oracle与dm数据库不能互联
下面对两个场景展开描述

**场景一:oracle与dm数据库能互联

这个场景相对简单,能连可视化工具的话,直接用DM数据迁移工具即可**
image.png
一.创建工程
打开dm数据库迁移工具后,点击创建工程,输入名称描述保存即可
image.png
image.png
二.新建迁移
点击工程,下拉点开迁移,右键,新建迁移,填写名称描述,确定即可
image.png
image.png

三.执行迁移

image.png

image.png

image.png
四.开始迁移

场景二:oracle与dm数据库不能互联

1.本机建个win版dm8数据库;

2.连接公司内网把公司库数据用dm数据迁移工具迁移到本机的dm8数据库;

3.本机导出dm格式的导出文件;

4.上传到数据库服务器,用命令行导入数据;

导入命令:
./dimp USERID=yyq/yyq FILE=a.dmp DIRECTORY=/opt/dmdbms LOG=a_dameng202008312036.log owner=yyq

5.创建另外一个用户自动生成新schema;

6.所有表create table as select * form vim.表名;

7.视图等其他内容单独创建;

8.对比原始oracle库与dm库数据表内容及缺失情况,补足缺失数据

问题:
达梦创建用户时会自动创建同名schema,但是此时用dimp命令却无法导入,因为导入时指定schema的拥有者是sysdba;
用sysdba导入后吧,又无法创建用户了,因为同名schema已存在,这就是比较扯淡的事情了,而且目前我这没找到其他办法解决,只能创建另外一个用户
oracle往达梦迁移时有些格式数据是无法迁移的,比如日期型,在oracle可以存的格式有些进不了达梦库;有些字段会提示超长,比如text类型,可能存在varchar2转换成达梦有问题,没具体研究,只能比对缺少数据后重新导入,根据报错扩展字段长度
其他常规操作
类比sqlplus命令:
./disql sysdba/sysdba@10.10.10.30:5236
–新建表空间
CREATE TABLESPACE test DATAFILE ‘/home/dmdba/data/DAMENG/test01.dbf’ SIZE 1024;
–新建用户,密码最短8位
Create user
create user test identified by TEST_SYS123 default TABLESPACE test;
–赋权,没研究,暂按dba
grant dba to auth_sys;
–新建schema
create schema vim_sys authorization vim_sys

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服