首页 > 数据库 >数据泵(impdb)导入Oracle分片的数据库dump文件

数据泵(impdb)导入Oracle分片的数据库dump文件

时间:2023-10-07 10:12:54浏览次数:33  
标签:prd dump imp dmp impdb 导入 oracle Oracle

数据泵(impdb)导入Oracle数据库

一.sqlplus登录目标数据库,创建导入的目录路径

#该目录要在导入的数据库本机建立,如果是docker就在容器内部创建
create directory data_dir as '/home/oracle/prd_imp/prd_dump';

data_dir为路径名称,可自命名。路径是导出的dmp文件存放的路径必须存在。

查询用户创建目录

select * from dba_directories;

image-20230928110818221

上面命令只是指定了导出文件存放的路径,但是这个路径需要自己手动创建和赋权

mkdir /home/oracle/prd_imp/prd_dump

chown -R oracle:oinstall /home/oracle/prd_imp/prd_dump

cd /home/oracle/prd_imp/prd_dump

chmod 777 prd_dump

二.确定导入的用户具有相应的权限

SELECT * 
FROM DBA_ROLE_PRIVS 
WHERE GRANTEE = '<dba_user>' 
AND GRANTED_ROLE IN ('DBA', 'EXP_FULL_DATABASE', 'IMP_FULL_DATABASE');

image-20231007092202940

三.上传imp文件,检查文件权限并导入

image-20231007092500621

注意:在导入数据的时候需要检查源数据的表空间大小,默认表空间最大只有32G,超过容量会导致导入失败。所以超过32G的表空间需要创建大表空间。

#创建大表空间
CREATE BIGFILE TABLESPACE YG_JXGLXX DATAFILE'/home/oracle/app/oracle/oradata/helowin/demo01.dbf' SIZE 100G AUTOEXTEND ON NEXT 50G MAXSIZE 300G;
#执行导入命令
impdp <dba_user>/<dba_pass>@<service_name> REMAP_SCHEMA=<dba_user1>:<dba_user2> DIRECTORY=data_dir DUMPFILE=db_20230910_2205_01.dmp,db_20230910_2205_02.dmp,db_20230910_2205_03.dmp,db_20230910_2205_04.dmp TABLE_EXISTS_ACTION=REPLACE  CONTENT=ALL LOGFILE=imp_01.log

impdp [用户名]/[密码]@[服务名]
REMAP_SCHEMA=[源用户名1]:[目标用户名2]
table_exists_action=replace /存在的表动作(覆盖)/
directory=[目录名]
dumpfile=[.dmp文件名]
logfile=[.log文件名]
CONTENT=ALL 用于指定导入的内容范围。ALL 表示导入所有对象和数据

执行导入命令之后就等待导入完成

标签:prd,dump,imp,dmp,impdb,导入,oracle,Oracle
From: https://www.cnblogs.com/blogof-fusu/p/17745648.html

相关文章

  • Oracle数据库升级PostgreSQL 后的踩坑记录(二)之date类型处理
    踩坑二:date类型处理背景:因为业务需求,需要整个项目除了适配oracle和mysql后还需要适配PostgreSQL,在此背景下就出现了一系列的问题。接系列一databaseId映射成oracle之后问题又随之而来,由于从oracle数据库的date类型映射成postgreSQL的timestamp字段又出现了一些查询报错的问题,我......
  • ORACLE 存储过程详解
    一、定义所谓存储过程(StoredProcedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数来调用并执行它,从而完成一个或一系列的数据库操作。二、存储过程创建......
  • json.dump()的用法
    一、JSON是什么JSON是用于存储和交换数据的语法。JSON(JavaScriptObjectNotation)最初是用JavaScript对象表示法编写的文本,但随后成为了一种常见格式,被包括Python在内的众多语言采用。python里面的语言对象一般只有python能读懂,为了能比较好储存,而且能够让别的编程语言也能......
  • 解决交叉编译产生的程序放到目标板上运行时出现Segmentation fault (core dumped)
    原文:https://blog.csdn.net/qq_36219010/article/details/100163134在PC机上编译一段程序:arm-linux-gnueabihf-gcc-ohellohello.c这里产生hello文件用FTP传输到目标板上(树莓派3B+),运行时出现:报告段错误。后来我又试了不输出指定的文件名:arm-linux-gnueabihf-gcchello.c......
  • 仿Hexdump的代码
    编码过程中我们有时候需要将数据的十六进制值打出来看看,这里做一下记录#include<stdio.h>#include<ctype.h>#include<unistd.h>voidpretty_print(uint8_t*ret,size_tsize){for(size_ti=0;i<size;i++){size_tc=i;printf("%08zx......
  • oracle教程:创建手动刷新的物化视图
    创建物化视图的语法1、物化视图概念:将视图中查询出来的数据存储到一张表中。2、优点:查询速度比视图要快。3、缺点:占用资源,并且要时时更新数据。4、创建物化视图CREATEMETERIALIZEDVIEWview_name[BUILDIMMEDIATE|BUILDDEFERRED]REFRESH[FAST|COMPLETE|FORCE][ON[CO......
  • Oracle数据库升级PostgreSQL 后的踩坑记录(一)之databaseId
    背景:因为业务需求,需要整个项目除了适配oracle和mysql后还需要适配PostgreSQL,在此背景下就出现了一系列的问题。踩坑一:databaseId连接数据库后启动发现某些查询报错传入的sql参数是空,经过反复排查定位到对应的MyBaits的xml文件,我贴出原始的文件文件中判断databaseid是mysql还是oracl......
  • 主流常见关系数据库分页sql语句写法。MySQL、PostgreSQL、SQLite、Oracle、DB2、SQL S
    前言1.分页sql逻辑:每页10条,取第3页。即取第21~30条数据1.1.MySQL/SQLite/PostgreSQLselect*fromdemolimit10offset20;select*fromdemolimit20,10;--PostgreSQL不支持该写法1.2.Oracle12C+Oracle11g之前很难用,Oracle12C+与MySQL用法格式一样了,只是语法关......
  • MySQL和Oracle数据库引擎
    MYSQL数据库:在mysql数据库中,常用到的引擎主要就是2个:Innodb和MyIASM。Innodb:它提供了对数据库ACID事务的支持,并且还提供行级锁和外键的约束。它被设计的目的就是处理大数据容器的数据库系统,它本身实际上是基于Mysql后台的完整系统。在Mysql运行的时候,Innodb会在内存中建立缓冲池,用......
  • 【fgolang代码分享】golang如何连接oracle进行业务开发
    在我们的开发场景下虽然大部分我们都使用mysql就可以满足我们日常的开发任务,但是总有一些开发场景是需要我们是用oracle数据库的,今天我给大家带来golang的俩种连接oracle的方式。oracle简介oracle也是出自甲骨文公司,和mysql同门,也是全球最大的信息管理软件及服务供应商,Oracle开......