exp,expdp命令实践

2024-05-03 12:18
文章标签 实践 命令 expdp exp

本文主要是介绍exp,expdp命令实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 在window平台下面:

  查看帮助:exp/imp help=y 可以查看命令参数和参数默认值说明。

  同样有expdp/impdp help=y。exp/imp早在9i就有这样的用法。expdp/impdp在oracle 10g才出现的用法。oracle 10g版本也支持exp/imp这样的用法。

  exp/imp,expdp/impdp用于数据的逻辑备份。

  按照给定的exp/expdp参数说明:可以分别针对表(查询),用户,表空间,完整库的导入和导出。

  在使用这些命令的时候,最后指定导出日志文件的位置(和数据文件放在一起),这样即使文件导出很长的时间,也记得当时导出的格式。

下面这些摘自:http://www.cnblogs.com/furenjun/archive/2008/05/20/oracleImpExp.html

数据的导出

 1 将数据库SampleDB完全导出,用户名system 密码manager 导出到E:\SampleDB.dmp中

   exp system/manager@TestDB file=full.dmp full=y log=full.log

   --file也可以就写个文件名:full.dmp,这样导出文件在当前的文件夹下面。

    从导出的日志来看 依次导出有:

. 正在导出表空间定义
. 正在导出配置文件
. 正在导出用户定义
. 正在导出角色
. 正在导出资源成本
. 正在导出回退段定义
. 正在导出数据库链接
. 正在导出序号
. 正在导出目录别名
. 正在导出上下文名空间
. 正在导出外部函数库名称
. 导出 PUBLIC 类型同义词
. 导出私有类型同义词
. 正在导出对象类型定义
. 正在导出系统过程对象和操作
. 正在导出 pre-schema 过程对象和操作
. 正在导出群集定义
. 即将导出 SYSTEM 的表通过常规路径 ...
. . 正在导出表 

....

. . 正在导出分区                   COSTS_Q1_1998      57879 行被导出

. 正在导出同义词
. 正在导出视图
. 正在导出引用完整性约束条件
. 正在导出存储的过程
. 正在导出运算符
. 正在导出索引类型
. 正在导出位图, 功能性索引和可扩展索引 
. 正在导出后期表活动
. 正在导出触发器
. 正在导出实体化视图
. 正在导出快照日志
. 正在导出作业队列
. 正在导出刷新组和子组
. 正在导出维
. 正在导出 post-schema 过程对象和操作
. 正在导出用户历史记录表
. 正在导出默认值和系统审计选项
. 正在导出统计

 2 将数据库中system用户与sys用户的表导出

   exp system/manager@TestDB file=E:\sampleDB.dmp  owner=(system,sys)

 3 将数据库中的表 TableA,TableB 导出

    exp system/manager@TestDB  file=E:\sampleDB.dmp  tables=(TableA,TableB)

 4 将数据库中的表tableA中的字段filed1 值为 "王五" 的数据导出

   exp hr/hr tables=(employees) file=query.dmp log=query.log query='where employee_id ">" 110 '

   --将会导出导出满足条件的数据。

下面是一些特殊字符的转化

windows下面的处理:

exp ... query='where deptno=10'
exp ... query='where deptno=''10'''
exp ... query='where deptno"<"10'

在Solaris(C shell)下, 如何指定query参数:

exp ..... query=\"where col1 \< 1000\"
exp ..... query=\"where col1 \< '1000'\"


   如果想对dmp文件进行压缩,可以在上面命令后面 加上 compress=y 来实现。

 数据的导入

 1 将备份数据库文件中的数据导入指定的数据库SampleDB 中,如果 SampleDB 已存在该表,则不再导入;

   imp system/manager@TEST  file=E:\sampleDB.dmp  full=y  ignore=y 

 2 将d:\daochu.dmp中的表table1 导入

 imp system/manager@TEST  file=E:\sampleDB.dmp  tables=(table1)

3. 导入一个完整数据库

 imp system/manager file=bible_db log=dible_db full=y ignore=y

4. 导入一个或一组指定用户所属的全部表、索引和其他对象

 imp system/manager file=seapark log=seapark fromuser=seapark

 imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)

5. 将一个用户所属的数据导入另一个用户

 imp system/manager file=tank log=tank fromuser=seapark  touser=seapark_copy
 imp system/manager file=tank log=tank fromuser=(seapark,amy)  touser=(seapark1, amy1)

6. 导入一个表

 imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)

7. 从多个文件导入

 imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4) 
log=paycheck, filesize=1G full=y

8. 使用参数文件

 imp system/manager parfile=bible_tables.par


bible_tables.par参数文件:
 #Import the sample tables used for the Oracle8i Database Administrator's 
Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import

例 import9.par 内容如下:
        FROMUSER=TGPMS       
        TOUSER=TGPMS2   (注:把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER的用户可以不同)          
        ROWS=Y
        INDEXES=Y
        GRANTS=Y
        CONSTRAINTS=Y
        BUFFER=409600
        file==/backup/ctgpc_20030623.dmp
        log==/backup/import_20030623.log


9. 增量导入

 imp system./manager inctype= RECTORE FULL=Y  FILE=A 
不少情况下要先将表彻底删除,然后导入。

EXP常规模式、EXP直接路径模式和EXPDP三种方式导出的性能对比

exp常规模式格式:(不指定exp命令中的direct 参数,默认为N)

exp zhejiang/zhejiang file=/data1_regular.dmp buffer=20480000

EXP直接路径模式:

exp zhejiang/zhejiang file=/data1_regular.dmp buffer=20480000  direct =y

EXPDP数据泵:

expdp zhejiang/zhejiang dumpfile=zj_datapump.dp directory=d_test schemas=zhejiang


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/maqinqin/archive/2009/05/26/4218697.aspx

这篇关于exp,expdp命令实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/956735

相关文章

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

30常用 Maven 命令

Maven 是一个强大的项目管理和构建工具,它广泛用于 Java 项目的依赖管理、构建流程和插件集成。Maven 的命令行工具提供了大量的命令来帮助开发人员管理项目的生命周期、依赖和插件。以下是 常用 Maven 命令的使用场景及其详细解释。 1. mvn clean 使用场景:清理项目的生成目录,通常用于删除项目中自动生成的文件(如 target/ 目录)。共性规律:清理操作

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

利用命令模式构建高效的手游后端架构

在现代手游开发中,后端架构的设计对于支持高并发、快速迭代和复杂游戏逻辑至关重要。命令模式作为一种行为设计模式,可以有效地解耦请求的发起者与接收者,提升系统的可维护性和扩展性。本文将深入探讨如何利用命令模式构建一个强大且灵活的手游后端架构。 1. 命令模式的概念与优势 命令模式通过将请求封装为对象,使得请求的发起者和接收者之间的耦合度降低。这种模式的主要优势包括: 解耦请求发起者与处理者

linux 判断某个命令是否安装

linux 判断某个命令是否安装 if ! [ -x "$(command -v git)" ]; thenecho 'Error: git is not installed.' >&2exit 1fi

jenkins 插件执行shell命令时,提示“Command not found”处理方法

首先提示找不到“Command not found,可能我们第一反应是查看目标机器是否已支持该命令,不过如果相信能找到这里来的朋友估计遇到的跟我一样,其实目标机器是没有问题的通过一些远程工具执行shell命令是可以执行。奇怪的就是通过jenkinsSSH插件无法执行,经一番折腾各种搜索发现是jenkins没有加载/etc/profile导致。 【解决办法】: 需要在jenkins调用shell脚

Prometheus与Grafana在DevOps中的应用与最佳实践

Prometheus 与 Grafana 在 DevOps 中的应用与最佳实践 随着 DevOps 文化和实践的普及,监控和可视化工具已成为 DevOps 工具链中不可或缺的部分。Prometheus 和 Grafana 是其中最受欢迎的开源监控解决方案之一,它们的结合能够为系统和应用程序提供全面的监控、告警和可视化展示。本篇文章将详细探讨 Prometheus 和 Grafana 在 DevO

springboot整合swagger2之最佳实践

来源:https://blog.lqdev.cn/2018/07/21/springboot/chapter-ten/ Swagger是一款RESTful接口的文档在线自动生成、功能测试功能框架。 一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务,加上swagger-ui,可以有很好的呈现。 SpringBoot集成 pom <!--swagge

Linux命令(4):fg与bg命令

fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的 一.& 最经常被用到 这个用在一个命令的最后,可以把这个命令放到后台执行 二.ctrl + z 可以将一个正在前台执行的命令放到后台,并且暂停 三.jobs 查看当前有多少在后台运行的命令 四.fg 将后台中的命令调至前台继续运行 如果后台中有多个命令,可以