当前位置: 首页 > news >正文

Oracle数据泵备份恢复(导出导入)详细语句

数据泵备份

查询已存在备份目录

select * from dba_directories;

新建备份目录

create directory dbbak as '/u01/dbbak';

注意:在本地新建对应的物理目录

给指定用户赋权

grant read, write on directory dbbak to testuser;   
或者直接把目录的权限设置为公开
grant read, write on directory dbbak to public;

按表名导出

expdp testuser/passwd directory=dbbak tables=emp,dept dumpfile=full_db20230831.dmp full=y logfile=full_db20230831.log

还可以根据表的查询条件导出

expdp testuser/passwd directory=dbbak tables=emp dumpfile=full_db20230831.dmp full=y logfile=full_db20230831.log query=\"where age\='25'\"  --注意转移符号

按表空间导出

expdp testuser/passwd directory=dbbak tablespaces=users  dumpfile=full_db20230831.dmp logfile=full_db20230831.log

按用户导出

expdp testuser/passwd directory=dbbak schemas=testuser  dumpfile=full_db20230831.dmp logfile=full_db20230831.log

全库导出语句

expdp testuser/passwd directory=dbbak full=y dumpfile=full_db20230831.dmp logfile=full_db20230831.log

进阶

expdp testuser/passwd directory=dbbak full=y dumpfile=full_%U.dmp logfile=full_%U.log parallel=4 filesize=500m compression=all cluster=n

相关参数介绍

PARALLEL: 指定执行导出操作的并行进程个数,默认值为1,并行度设置不应该超过CPU数的2倍。
FILESIZE: 指定导出文件的最大尺寸,默认为0,(表示文件尺寸没有限制)
%U.dmp: “%U”表示自动生成递增的序列号。无需输入多个文件名称。
注:一般以上三个参数结合使用提高数据泵导出效率。
COMPRESSION:压缩,有四个参数值
ALL :对导出的元数据和表数据都进行压缩,得到的导出文件是最小的,耗时也是最长的。
DATA_ONLY :仅对表数据进行压缩,对于大数据量的导出效果明显,会比METADATA_ONLY方式得到更小的压缩文件。
METADATA_ONLY :仅对元数据进行压缩,而不会对表数据进行压缩,这种压缩执行后效果一般不是很明显,不过速度比较快。
NONE :不进行任何的压缩,导出后的文件也是最大的。
DEFAULT :默认方式,即不指定COMPRESSION参数,会采用默认的压缩方式METADATA_ONLY。
FULL:指定数据库模式导出,默认为N,FULL={Y | N}为Y时,表示执行数据库导出。
QUERY: 用于指定过滤导出数据的where条件,还有content、exclude、include、sample等相关过滤参数。
CLUSTER:在RAC环境下如果PARALLEL参数设置大于1,进程会在RAC的各个节点上进行导出,如果导出目录不共享的话就会报错。解决方法:设置为共享的directory或者导出语句添加cluster=n选项,指定只在本地导出;

数据泵恢复

导入用户(从用户scott导入到用户scott)

impdp scott/scott@PROD directory=dbbak dumpfile=expdp.dmp schemas=scott

导入表(从scott用户中把表dept和emp导入到system用户中)

impdp \"\/ as sysdba\" directory=dbbak dumpfile=expdp.dmp tables=scott.dept,scott.emp remap_schema=scott:system

导入表空间

impdp \"\/ as sysdba\" directory=dbbak dumpfile=tablespace.dmp tablespaces=example

导入数据库

impdp \"\/ as sysdba\" directory=dbbak dumpfile=full_%U.dmp full=y parallel=4

例:全库备份,把原来的scott用户导入test用户

impdp \" / as sysdba \" directory=dbbak dumpfile=full_%U.dmp schemas=scott remap_schema=scott:test  transform=oid:n logfile=full.log parallel=4 data_options=skip_constraint_errors

impdp恢复步骤

1、切换到Oracle数据库的用户,使用system登录oracle
2、创建还原逻辑目录,与导出时创建的逻辑目录相同。
在Linux系统上创建/home/oracle/dbbak备份目录,并将备份的数据库文件拷贝到该目录

在数据库中也创建目录名和相对应路径

SQL>  create or replace directory dbbak as '/home/oracle/dbbak’;

3、给目标用户授权
– 给指定用户(Scott)赋权

grant read, write on directory expdpdir to Scott;   

– 或者直接把目录的权限设置为公开

grant read, write on directory expdpdir to public;

4、导入备份文件
eg:导入全部数据

impdp testuser/passwd DIRECTORY=DBBAK full=y dumpfile=full_db20230831.dmp  logfile=full_db20230831.log ;

相关参数介绍

SCHEMAS:要导入的用户,默认为当前用户。
REMAP_SCHEMA:=source_schema:target_schema 将原用户导入目标用户。
TRANSFORM:该选项用于指定是否修改建立对象的DDL语句.要应用于适用对象的元数据转换。有效的关键字为: OID, PCTSPACE, SEGMENT_ATTRIBUTES 和 STORAGE。TRANSFORM=transform_name:value[:object_type] Transform_name用于指定转换名,其中SEGMENT_ATTRIBUTES用于标识段属性(物理属性,存储 属性,表空间,日志等息),STORAGE用于标识段存储性,VALUE用于指定是否包含段属性或段存储属 性,object_type用于指定对象类型。
DATA_OPTIONS:在导入过程中使用外部表访问方法时,设置DATA_OPTIONS参数的值为SKIP_CONSTRAINT_ERRORS允许发生非延迟约束错误时继续载入,如果没有这个选项,默认将回滚整个操作,这个参数对延迟约束没有影响,但一旦检测到还是引起回滚,如果对象有唯一性索引或约束,不能使用APPEND提示,它可能会对性能产生负面影响。在导出过程中,如果XMLTYPE列以CLOB格式存储,它们会被自动导出为非压缩的CLOB,如果是以对象–关系,二进制或CLOB格式组合存储,默认将以压缩格式导出,设置DATA_OPTIONS参数的值为XML_CLOBS指定所有XMLTYPE列都以非压缩CLOB格式导出,导入/导出必须使用相同的XML方案,作业版本必须设置为11.0.0或更高。

http://www.lryc.cn/news/149947.html

相关文章:

  • 【JS案例】JS实现积分抽奖(内附源码)
  • angular抛出 ExpressionChangedAfterItHasBeenCheckedError错误分析
  • 动态链接库的__declspec(dllexport)关键字的概念
  • 群晖NAS:DS Video、Jellyfin等视频电影电视剧海报、背景墙搜刮器
  • WEBGL(3):鼠标动态绘制点
  • Sass基础
  • Java中的消息队列有哪些?
  • 多维时序 | Matlab实现GRU-Adaboost和GRU多变量时间序列预测对比
  • 测试用例编写规范参考
  • unity3d:功能验证,收集开源项目的工程合集
  • plotly_beforehover 用法:
  • 利用 AI 赋能云安全,亚马逊云科技的安全技术创新服务不断赋能开发者
  • 18. 填坑Ⅰ
  • CSS 实现平面圆点绕椭圆动画
  • docker login : x509: certificate signed by unknown authority
  • 金蝶云星空二开,插件查看工具
  • error: ‘std::_hypot‘ has not been declared using std::hypot;
  • 介绍 Apache Spark 的基本概念和在大数据分析中的应用。
  • Java设计模式:四、行为型模式-09:模板模式
  • 【前端】Vue2 脚手架模块化开发 -快速入门
  • 【广州华锐互动】AR昆虫认知学习系统实现对昆虫形态的捕捉和还原
  • nginx压缩ttf文件 mine.types的作用
  • 【云原生】Kubernetes容器编排工具
  • 【Css】Less和Sass的区别:
  • 八、MySQL(DML)如何修改表中的数据?
  • Python使用 YOLO_NAS_S 模型进行目标检测并保存预测到的主体图片
  • <AIX>《AIX RAID 操作之LV逻辑卷镜像制作,即lvcopy操作》
  • JSX底层渲染机制
  • 2023_Spark_实验六:Scala面向对象部分演示(二)(IDEA开发)
  • ArcGIS美化科研论文地图(利用在线底图)