Oracle基础 exp/imp 数据泵导入/导出 命令

一、导出方式:  

  使用exp/imp方式导出数据分为四种方式:

  1、表方式导出:一个或多个指定的表,包括表的定义、表数据、表的所有者授权、表索引、表约束,以及创建在该表上的触发器。也可以只导出结构,不导出数据。还可以导出用户所拥有的全部表,还可以指定导出的表的分区。

  2、用户方式导出:用户模式的所有对象以及对象中的数据。

  3、表空间方式导出:包含在指定表空间中的所有对象,以及对象上的索引定义。

  4、全部数据库方式导出:是指数据库中的所有对象,包括表空间、用户及模式中的所有对象(表、视图、序列、同义词、约束、索引、存储过程和触发器等)、数据和权限。

二、用exp命令导出数据。

  语法:

  exp userid=username/password direct=y full=y rows=y file=d:/backup/back.dmp log=d:/backup/back.log

  说明:

  userid=username/password:表示用户名和密码。

  direct=y:是否按直接路径导出

  full=y:表示全部数据库导出

  rows=y:表示连同基表中的数据一同导出

  file:导出文件

  log:导出的日志文件

  参数可以是一个或者多个,如果在命令行没有给出必须的参数,导出使用程序会提示用户逐个输入。

  

  由于exp参数过多,可以通过输入 exp help=y 获取exp的语法信息。

通过输入 EXP 命令和用户名/口令,您可以后接用户名/口令的命令:

例程: EXP SCOTT/TIGER

或者,您也可以通过输入跟有各种参数的 EXP 命令来控制“导出”  按照不同参数。要指定参数,您可以使用关键字:

格式: EXP KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN) 例程: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR) 或 TABLES=(T1: P1,T1: P2),如果 T1 是分区表

USERID 必须是命令行中的第一个参数。

关键字  说明(默认)                                      关键字                       说明(默认)   --------------------------------------------------------------------------   USERID        用户名/口令                            FULL                        导出整个文件 (N)   BUFFER        数据缓冲区大小                        OWNER                   所有者用户名列表   FILE             输出文件 (EXPDAT.DMP)           TABLES                   表名称列表   COMPRESS   导入到一个区 (Y)                      RECORDLENGTH IO  记录的长度   GRANTS       导出权限 (Y)                            INCTYPE                 增量导出类型   INDEXES      导出索引 (Y)                            RECORD                 跟踪增量导出 (Y)   DIRECT        直接路径 (N)                           TRIGGERS               导出触发器 (Y)   LOG            屏幕输出的日志文件                   STATISTICS             分析对象 (ESTIMATE)   ROWS         导出数据行 (Y)                         PARFILE                  参数文件名   CONSISTENT 交叉表一致性                         CONSTRAINTS         导出约束条件 (Y)

FEEDBACK                              每 x 行显示进度 (0)   FILESIZE                                每个转储文件的最大大小   FLASHBACK_SCN                    用于回调会话快照的 SCN   FLASHBACK_TIME                   用来获得最接近于指定时间的 SCN 的时间   QUERY                                   用来导出表的子集的选择子句   RESUMABLE                           遇到与空格有关的错误时挂起 (N)   RESUMABLE_NAME                  用来标识可恢复语句的文本字符串   RESUMABLE_TIMEOUT             RESUMABLE 的等待时间   TTS_FULL_CHECK                   对 TTS 执行完全或部分相关性检查   TABLESPACES                        要导出的表空间列表   TRANSPORT_TABLESPACE       导出可传输的表空间元数据 (N)   TEMPLATE                              调用 iAS 模式导出的模板名称

示例:

  1)将数据库完全导出

 exp system\[email protected] file=‘d:\backup\full.dmp‘ full=y

  2)导出用户

  exp system/[email protected] file=‘d:\backup\scott.dmp‘ owner=(scott)

  3)导出表

  exp scott/[email protected] file=‘d:\backup\table.dmp‘ tables=(emp,dept)

  4)导出表空间

  exp scott/[email protected] file=‘d:\backup\table.dmp‘ tablespaces=(users)

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

三、使用imp命令导入数据  

  可以通过在命令行输入 imp help=y 获取imp的语法信息: =============================================================================   C:/Documents and Settings/auduser>imp help=y

可以通过输入 IMP 命令和您的用户名/口令  后接用户名/口令的命令:

例程: IMP SCOTT/TIGER

或者, 可以通过输入 IMP 命令和各种参数来控制“导入”  按照不同参数。要指定参数,您可以使用关键字:

格式: IMP KEYWORD=value 或 KEYWORD=(value1,value2,...,vlaueN)   例程: IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N   或 TABLES=(T1: P1,T1: P2),如果 T1 是分区表

USERID 必须是命令行中的第一个参数。

关键字  说明(默认)        关键字      说明(默认)   --------------------------------------------------------------------------   USERID   用户名/口令             FULL         导入整个文件 (N)   BUFFER   数据缓冲区大小         FROMUSER     所有人用户名列表   FILE     输入文件 (EXPDAT.DMP)    TOUSER       用户名列表   SHOW     只列出文件内容 (N) TABLES      表名列表   IGNORE   忽略创建错误 (N)    RECORDLENGTH  IO 记录的长度   GRANTS  导入权限 (Y)           INCTYPE      增量导入类型   INDEXES 导入索引 (Y)          COMMIT       提交数组插入 (N)   ROWS    导入数据行 (Y)        PARFILE      参数文件名   LOG      屏幕输出的日志文件   CONSTRAINTS  导入限制 (Y)   DESTROY                           覆盖表空间数据文件 (N)   INDEXFILE                         将表/索引信息写入指定的文件   SKIP_UNUSABLE_INDEXES  跳过不可用索引的维护 (N)   FEEDBACK                         每 x 行显示进度 (0)   TOID_NOVALIDATE            跳过指定类型 ID 的验证   FILESIZE                            每个转储文件的最大大小   STATISTICS                       始终导入预计算的统计信息   RESUMABLE                      遇到与空格有关的错误时挂起 (N)   RESUMABLE_NAME             用来标识可恢复语句的文本字符串   RESUMABLE_TIMEOUT         RESUMABLE 的等待时间   COMPILE                             编译过程, 程序包和函数 (Y)

下列关键字仅用于可传输的表空间   TRANSPORT_TABLESPACE   导入可传输的表空间元数据 (N)   TABLESPACES                     将要传输到数据库的表空间   DATAFILES                          将要传输到数据库的数据文件   TTS_OWNERS                      拥有可传输表空间集中数据的用户

  示例:

  1)导入全部

  imp scott/[email protected] file=full.dmp full=y

  2)导入表

  imp scott/[email protected] file=table.dmp tables=(emp,dept)

  3)导入用户

  imp scott/[email protected] file=d:\backup\scott.dmp fromuser=scott touser=scott

时间: 2024-10-14 23:58:39

Oracle基础 exp/imp 数据泵导入/导出 命令的相关文章

Oracle 12c pdb的数据泵导入导出

12c推出了可插拔数据库,在一个容器cdb中以多租户的形式同时存在多个数据库pdb.在为pdb做数据泵导入导出时和传统的数据库有少许不同.           1,需要为pdb添加tansnames           2,导入导出时需要在userid参数内指定其tansnames的值,比如 userid=user/[email protected]   数据泵导入导出例子 1.查看当前的SID,查看pdb并切换到容器数据库,这里的pluggable数据库是pdborcl [[email pro

oracle数据泵导入导出命令

1.在PL/SQL的界面,找到Directories文件夹,找到目录文件的路径 2.通过SSH进入服务器 找到相应的路径 cd /u01/oracle/dpdir 输入指令 df -h   查看资源使用量 su – oracle   进入系统的oracle用户 3.导出数据库文件 expdp userid=hbcxjm/oracle  directory=dpdir dumpfile=hbcxjm.dmp job_name=hbcxjm logfile=hbcxjmlog parallel=2

Oracle 数据泵导入导出总结

Oracle 数据泵(IMPDP/EXPDP)导入导出总结 Oracle数据泵导入导出是日常工作中常用的基本技术之一,它相对传统的逻辑导入导出要高效,这种特性更适合数据库对象数量巨大的情形,因为我日常运维的数据库对象少则几千,多则几万甚至几十万,所以传统exp/imp就会非常耗时,而数据泵方式就因此脱引而出,下面就详细总结一下数据泵的使用方法,希望能给初学者带来帮助. 一.新建逻辑目录 最好以system等管理员创建逻辑目录,Oracle不会自动创建实际的物理目录“D:\oracleData”(

Oracle之数据泵导入/导出数据

以前习惯用imp/exp导入导出数据,现在我们来搞一把数据泵导入导出的方法.它比之于imp/exp的方式的优点自不必说---速度快! 但是很不幸,我在导出数据的时候报错了,我擦,这特么就尴尬了.于是,神技乍现,康哥就擅长解决问题有木有?呀?乍一看这报错也是没谁了,完全看不懂啊!别害怕,遇到这样的报错就是文件问题,与文件相关的要么权限要么路径,这里是指数据库内部不存在这个文件,但是我在Oracle用户下面创建了啊.没用的,你要在数据库内部创建哦,记住是内部.来,我们操作一把. 来吧朋友,开始我们的

在linux环境上对oracle数据库的数据泵导入导出操作

需求:公司搭建的报表库环境数据来自于生产环境oracle数据,因此需要使用kettle将oracle数据每天定时导入到报表数据库中(本文不讨论如何用kettle导数据,不赘述),若要导数据我们需要一套完善的生产oracle数据库的表结构.同时环境搭建以及oracle数据库都在linux环境下部署,因此,需要在linux环境下使用数据泵技术将数据完成导入导出 以上为需求概述 具体实现(即:操作步骤): su - root --切换root用户(由于不知道oracle用户的密码使用root来登录or

expdp/impdp 数据泵导入导出

expdp/impdp 数据泵导入导出 原创 小关enter 发布于CSDN论坛. 分类专栏: oracle 本文链接:https://blog.csdn.net/gty931008/article/details/86160808 业务场景: 在工作中,涉及到oracle数据库迁移,使用navicat等其他工具 容易报错,一系列问题很麻烦,今天记录一下操作流程及个人理解(文章参考了很多文档和博客): EXPDP数据导出 请自行修改目录路径和自定义的表名,否则出现错误很难查找~ 一般expdp流

6、数据泵导入导出操作

6.0.数据泵导入导出注意事项: 1.EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用: 2.数据泵的导出导入可以使用dba用户(管理所有的表空间),也可以使用普通用户(比如开发权限,只能管理自己的表空间), 但是普通用户需要授权转存储目录可读可写; 3.在下面的实验中使用的是dba用户进行操作: 6.1.登录到oracle实例: [[email protected] ~]$ echo $ORACLE_SID orcl [[email protecte

oracle中使用impdp数据泵导入数据提示“ORA-31684:对象类型已经存在”错误的解决

转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/47448751 oracle中使用impdp数据泵导入数据时,假设导入之前已经创建了用户,会提示错误:"ORA-31684:对象类型已经存在".如: 事实上这个问题并不严重,能够先不创建用户,导入时指定一个超级用户导入: impdp system/123456@ORCL DIRECTORY=DUMP_EXP DUMPFILE=EXPDATA.DMP remap_sche

第22章 oracle EXP/IMP/EXPDP/IMPDP 导入导出

2015-10-24 目录 参考资料 [1] oracle数据库导入导出命令! [2] Oracle数据库导入导出命令总结 [3] Oracle 数据导入导出 [4] Oracle的导入导出命令 [5] oracle导入导出 [6] oracle中exp,imp的使用详解 [7] ORACLE EXP命令 [8] Oracle的exp/imp详解(原创) [9] ORACLE EXP/IMP的使用详解 [10] Oracle exp/imp 命令 [11] oracle imp/exp命令详解