【oracle】oracle基于数据泵方式进行数据迁移

下面以windows下oracle操作为例

1. 使用数据泵备份

  • 在D盘创建目录yn作为备份后的保存的的文件夹

  • 使用dba用户在oracle服务器上登录sqlplus sqlplus sys/sys@orcl as sysdba

  • 在sys登录后的sql命令行中创建导出目录对象create or replace directory exp_dir as 'D:\yn\';

  • 授权指定用户具有访问目录的权限

    sql 复制代码
    -- 授予目录读写权限
    grant read,write on directory exp_dir to test_user; 
    -- 授予数据泵操作权限
    grant exp_full_database to test_user;
    -- 预防用户权限不足
    grant dba to test_user; 
  • 导出操作(在服务器terminal中执行)

shell 复制代码
expdp test_user/test_user_pass@orcl 
 directory=exp_dir 
 dumpfile=exp_user_20260211.dmp 
 logfile=exp_user_20260211.log

命令中各字段说明如下

test_user:登录用户

test_user_pass:登录用户的密码

orcl:当前用户的 schema

exp_dir:前面设置的导出目录名称

dumpfile:导出的dmp文件名称

logfile:本次导出操作的日志

2. 使用数据泵还原

  • 在D盘创建目录yn作为导入时的保存数据的的文件夹,并将数据复制到这个文件夹下

  • 使用dba用户在oracle服务器上登录sqlplus sqlplus sys/sys@orcl as sysdba

  • 在sys登录后的sql命令行中创建导入目录对象create or replace directory imp_dir as 'D:\yn\';

  • 授权指定用户具有访问目录的权限

    sql 复制代码
    -- 授予目录读写权限
    grant read,write on directory imp_dir to test_user; 
    -- 授予数据泵操作权限
    grant imp_full_database to test_user;
    -- 预防用户权限不足
    grant dba to test_user; 
  • 导入操作(在服务器terminal中执行)

shell 复制代码
impdp test_user1/test_user_pass@orcl2 
 directory=imp_dir 
 dumpfile=exp_user_20260211.dmp 
 logfile=imp_user_20260211.log
 remap_schema=test_user:test_user1  
 remap_tablespace=orcl1:orcl2

命令中各字段说明如下

test_user1:登录用户

test_user_pass:登录用户的密码

orcl2:当前用户的 schema

imp_dir:前面设置的导入目录名称

dumpfile:待导入的dmp文件名称

logfile:本次导入操作的日志 remap_schema:解决映射前后用户不一致的问题,前面为:源库用户,后面为:待导入库的用户

remap_tablespace: 解决表空间前后不一致的问题,前面:源表空间,后面:目标表空间

相关推荐
天空属于哈夫克320 小时前
自动化素材中枢:实现云端文件与外部群消息的异步同步方案
数据库·oracle
Yvonne爱编码20 小时前
数据库---Day 1 数据库基础
数据库·mysql·oracle
星辰徐哥21 小时前
易语言数据库操作初步:内置Ado引擎与SQLite3快速上手
数据库·oracle·sqlite·易语言
星如雨グッ!(๑•̀ㅂ•́)و✧1 天前
Spring WebFlux 中的并发
java·spring·oracle
数据库小组1 天前
Oracle 上云 / 替代场景下,NineData 完成到 PostgreSQL 的低风险迁移
大数据·数据库·mysql·postgresql·oracle·数据一致性·数据库迁移
jnrjian1 天前
expdp 指定的表分区 其实指定where 条件也可以
oracle
IT邦德1 天前
Oracle 26ai 图数据库
数据库·oracle
果果燕1 天前
SQLite3数据库学习笔记1
数据库·sql·oracle
jnrjian1 天前
Oracle 收缩8TB 磁盘空间遇到的问题
数据库·oracle
Ricky_Theseus1 天前
SQL数据控制9动词
数据库·sql·oracle