热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

OracleDataPump使用范例及部分注意事项(expdp/impdp)

Oracle版本:OracleDatabase11gEnterpriseEditionRelease11.2.0.3.0

Oracle版本:Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production,另外,系统有进行了6个节点的RAC

最近系统要“缩容”,原因我不想多说,非常麻烦的一件事情,因为要把数据提出来压缩、存放。

和操作系统无关,主要系Oracle的数据。

Oracle版本:Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

另外,系统有进行了6个节点的RAC集群,,每个表都按照月份或者日期进行了分区。

一、前置工作:

1. 在系统中建立生成dmp文件(导出的数据文件)的目录(一般情况下都需要root权限,这个自由发挥了^_^):

root@bidb04# mkdir -p /data/oracle_backup
root@bidb04# chown oracle:oinstall /data/oracle_backup

另外提个醒,无论你导出导入的时候用的是什么用户和密码登陆,数据库都是用(linux系统中的)oracle用户导出文件的,所以这个目录一定要让(linux系统中的)oracle用户有写权限。

2. 在oracle中定义生成dmp文件(导出的数据文件)的目录:

使用sqlplus / as sysdba进入sqlplus:

sql> grant create any directory to scott; --这一步也可以不用。
sql> create or replace directory oracle_backup as '/data/oracle_backup'; --有了上面那一步,目录也可以使用scott用户建立,当然直接就这么建立就完了。
sql> grant read, write on directory oracle_backup to scott; --赋予目录访问权限。
sql> create or replace directory DATA_PUMP_DIR as '/oracle/app/oracle/product/11.2.0/dbhome_1/rdbms/log/'; --这个貌似我是没有这么建立的,系统自己有了。
sql> grant read, write on directory DATA_PUMP_DIR to scott; --同上备注。
sql> grant EXP_FULL_DATABASE to scott; --导出权限
sql> grant IMP_FULL_DATABASE to scott; --导入权限

二、Data Pump导出(expdp):

expdp COnTENT=PARALLEL=8 FILESIZE=2G ENCRYPTION=data_only ENCRYPTION_PASSWORD=password

备注:

#1. scott/**********@bidb4 (红色部分)用户名密码和SID,这个就和sqlplus登陆的一致了。
#2. TABLES (绿色部分)表名(表名称:分区)
#3. DIRECTORY (蓝色部分)要生成导出文件的目录名--在oracle dba_directories中定义(定义方法见前文)
#4. DUMPFILE (黄色部分)生成的导出文件名%u参数表示对个文件的后缀,与parallel、filesize一起使用
#5. LOGFILE (紫色部分)日志记录文件名称(log目录:log名称,其中log目录在oracle dba_directories中定义)(定义方法见前文)
#6. CONTENT (橙色部分)要包含的内容
#7. CLUSTER (灰色部分)是否使用集群,默认是Y,这里需要N(可以看看后记)
#8. PARALLEL (灰色部分)并行处理
#9. FILESIZE (灰色部分)单个文件最大大小
#10. ENCRYPTION (灰色部分)加密选项1,指定加密内容(附录中有描述参数可选内容)
#11. ENCRYPTION_PASSWORD (灰色部分)加密选项2,指定加密密钥

三、Data Pump导入(impdp):

impdp PARALLEL=8 FILESIZE=2G ENCRYPTION_PASSWORD=password

备注:

基本和expdp的参数配置一致,有区别主要在第2个和第10个,另外,导出的日志名最好稍微修改一下,不然就覆盖掉了。

#2. TABLES (绿色部分)表名(只要表名就好了,不用加上分区,因为导入的数据里面已经包含了分区信息)
#10. ENCRYPTION (不再需要了)

linux

推荐阅读
  • 主调|大侠_重温C++ ... [详细]
  • 本文详细介绍了如何在Linux系统中创建和管理DB2数据库,包括用户切换、数据库创建、错误处理、连接与断开、表空间和缓冲池的创建,以及用户权限管理和数据导入导出等操作。 ... [详细]
  • 本文探讨了如何在Hive(基于Hadoop)环境中编写类似SQL的语句,以去除字段中的空格。特别是在处理邮政编码等数据时,去除特定位置的空格是常见的需求。 ... [详细]
  • 本文深入探讨了MySQL中常见的面试问题,包括事务隔离级别、存储引擎选择、索引结构及优化等关键知识点。通过详细解析,帮助读者在面对BAT等大厂面试时更加从容。 ... [详细]
  • 本文详细介绍了如何解决 Microsoft SQL Server 中用户 'sa' 登录失败的问题。错误代码为 18470,提示该帐户已被禁用。我们将通过 Windows 身份验证方式登录,并启用 'sa' 帐户以恢复其访问权限。 ... [详细]
  • 配置PHPStudy环境并使用DVWA进行Web安全测试
    本文详细介绍了如何在PHPStudy环境下配置DVWA( Damn Vulnerable Web Application ),并利用该平台进行SQL注入和XSS攻击的练习。通过此过程,读者可以熟悉常见的Web漏洞及其利用方法。 ... [详细]
  • 本文详细介绍如何使用 Apache Spark 执行基本任务,包括启动 Spark Shell、运行示例程序以及编写简单的 WordCount 程序。同时提供了参数配置的注意事项和优化建议。 ... [详细]
  • docker镜像重启_docker怎么启动镜像dock ... [详细]
  • openGauss每日一练第 12 天 |学习openGauss定义数据类型
    自己安装的openGauss环境启动openGaussgsctlDgaussdatadb1start登录openGaussgsqldpostgresp26000r1.创建一 ... [详细]
  • 软件工程课堂测试2
    要做一个简单的保存网页界面,首先用jsp写出保存界面,本次界面比较简单,首先是三个提示语,后面是三个输入框,然 ... [详细]
  • 本文档介绍了如何在Visual Studio 2010环境下,利用C#语言连接SQL Server 2008数据库,并实现基本的数据操作,如增删改查等功能。通过构建一个面向对象的数据库工具类,简化了数据库操作流程。 ... [详细]
  • 数据排序、无限滚动与分页加载及子查询的使用
    本文介绍了数据排序的基本方法,包括升序和降序排列。同时探讨了瀑布流布局(无限滚动)和传统分页技术在Web应用中的应用,并详细解释了子查询的概念及其替代方案。 ... [详细]
  • 本文介绍了如何通过在数据库表中增加一个字段来记录文章的访问次数,并提供了一个示例方法用于更新该字段值。 ... [详细]
  • 在寻找轻量级Ruby Web框架的过程中,您可能会遇到Sinatra和Ramaze。两者都以简洁、轻便著称,但它们之间存在一些关键区别。本文将探讨这些差异,并提供详细的分析,帮助您做出最佳选择。 ... [详细]
  • 本文介绍了两款提高Android开发效率的插件:Lombok和SQLScout。Lombok可以帮助开发者自动处理实体类的Getter和Setter方法,使代码更加简洁;而SQLScout则提供了直观的SQLite数据库查看功能,极大地简化了数据库调试过程。 ... [详细]
author-avatar
育霖培伦861
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有