达梦DM8之逻辑备份恢复(dexp/dimp)跨模式跨表空间的数据迁移

本文详细描述了如何使用达梦数据库的逻辑备份工具dexp和dimp进行跨模式和跨表空间的数据迁移,包括测试版本、数据准备、迁移过程以及不同情况下的参数设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.概述

        本文主要测试如何使用逻辑备份恢复(dexp/dimp)实现跨模式、跨表空间的数据迁移。

1.1 测试版本

达梦数据库的版本是:2023年4月之后的版本。

1.2 测试内容

  1. 跨模式数据迁移(默认表空间不同)。

2.测试过程

2.1 测试数据准备

1.创建测试用户TESTA、TESTB 
2.创建测试数据
--创建测试表
CREATE TABLE TESTA.A1(ID INT);
CREATE INDEX TESTA.IDX_A1 ON TESTA.A1(ID);

--导入测试数据
begin
  for i in 1..100 loop
    insert into TESTA.A1 values(DBMS_RANDOM.VALUE(1,100));
  end loop;
  Commit;
end;
/
3.检查测试数据
--检查表信息
SELECT OWNER AS 模式, 
       TABLE_NAME AS 表名, 
       NUM_ROWS AS 行数, 
       TABLESPACE_NAME AS 所属表空间 
  FROM ALL_TABLES 
 WHERE OWNER IN ('TESTA', 'TESTB');
 
--检查索引信息
SELECT OWNER AS 模式, 
       INDEX_NAME AS 索引名, 
       TABLESPACE_NAME AS 所属表空间 
  FROM DBA_INDEXES 
 WHERE OWNER IN ('TESTA', 'TESTB');

2.2 迁移测试1

1)导出dmp文件

2)导入dmp文件

3)查看表空间 
--检查表信息
SELECT OWNER AS 模式, 
       TABLE_NAME AS 表名, 
       NUM_ROWS AS 行数, 
       TABLESPACE_NAME AS 所属表空间 
  FROM ALL_TABLES 
 WHERE OWNER IN ('TESTA', 'TESTB');
 
--检查索引信息
SELECT OWNER AS 模式, 
       INDEX_NAME AS 索引名, 
       TABLESPACE_NAME AS 所属表空间 
  FROM DBA_INDEXES 
 WHERE OWNER IN ('TESTA', 'TESTB');

2.3 迁移测试2

        当用户/模式包含多个数据表空间/索引表空间时,dexp导出时:参数TABLESPACE=N(默认设置),dimp导入时只需要指定REMAP_SCHEMA参数设置模式映射,即可实现:跨用户/跨模式的对应默认表空间的数据导入。

2.4 总结

  1. 当用户/模式默认只包含1个数据表空间和1个索引表空间时,dexp导出时:参数TABLESPACE=N(默认设置),dimp导入时只需要指定REMAP_SCHEMA参数设置模式映射,即可实现:跨用户/跨模式的对应默认表空间的数据导入;
  2. 用户/模式包含多个数据表空间/索引表空间时,dexp导出时:参数TABLESPACE=N(默认设置),dimp导入时只需要指定REMAP_SCHEMA参数设置模式映射,即可实现:跨用户/跨模式的对应默认表空间的数据导入(其他数据表空间/索引表空间也会导入至默认的数据表空间/索引表空间中);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值