第14章导出与导入 在数据库的应用过程中,经常需要将一个数据库 中的数据移动到另一个数据库,或从外部文件中直接 提取数据到数据库中。为此,Oracle提供了几种常的 工具:最常用的就是Export和Import.工具,使用这两 个命令行工具可以在Oracle数据库之间进行数据的导 入/导出操作,也可以利用Export/mport工具对数据 清率电脑学堂 库进行逻辑备份;另外在Oracle11g中还可以使有数 据泵(Data Dump Export),使DBA或应用开发人 员可以将数据库的元数据(对角定义)和数据快速移 动到另一个Oracle数据库;而SQL*Loader_工具可以 用来从非Oracle数据库或其他任何能够生成ASCII文 本文件的数据源加载数据
1 第14章 导出与导入 在数据库的应用过程中,经常需要将一个数据库 中的数据移动到另一个数据库,或从外部文件中直接 提取数据到数据库中。为此,Oracle提供了几种常的 工具:最常用的就是Export和Import工具,使用这两 个命令行工具可以在Oracle数据库之间进行数据的导 入/导出操作,也可以利用Export/Import工具对数据 库进行逻辑备份;另外在Oracle 11g中还可以使有数 据泵(Data Dump Export),使DBA或应用开发人 员可以将数据库的元数据(对角定义)和数据快速移 动到另一个Oracle数据库;而SQL*Loader工具可以 用来从非Oracle数据库或其他任何能够生成ASCII文 本文件的数据源加载数据
本章知识要点: 了解EXPDP和IMPDP的作用 使用数据泵导出工具EXPDP 使用数据泵导入工具MPDP 使用EXPDP和IMPDP移动表空间 清率电脑学堂 使用SQL*Loader加载外部数据
2 本章知识要点: • 了解EXPDP和IMPDP的作用 • 使用数据泵导出工具EXPDP • 使用数据泵导入工具IMPDP • 使用EXPDP和IMPDP移动表空间 • 使用SQL*Loader加载外部数据
14.1 EXPDP和IMPDP简介 数据泵导出是Oracle10g新增加的功能,它使用 工具EXPDP将数据库对象的元数据(对象结构)或 数据导出到转储文件中。而数据泵导入则是使用工具 IMPDP将转储文件中的无数据及其数据导入到Oracle 数据库中。假设EMP表被意外删除,那么可以使用 IMPDP工具导入EMP的结构信息和数据。 清率电脑学堂
3 14.1 EXPDP和IMPDP简介 • 数据泵导出是Oracle 10g新增加的功能,它使用 工具EXPDP将数据库对象的元数据(对象结构)或 数据导出到转储文件中。而数据泵导入则是使用工具 IMPDP将转储文件中的无数据及其数据导入到Oracle 数据库中。假设EMP表被意外删除,那么可以使用 IMPDP工具导入EMP的结构信息和数据
14.2 EXPDP导出数据 Oracle提供的EXPDP可以将数据库对象的元数据 或数据导出到转储文件中。EXPDP可以导出表、导 出用户模式、表空间和全数据库4种方式。 清率电脑学堂
14.2 EXPDP导出数据 • Oracle提供的EXPDP可以将数据库对象的元数据 或数据导出到转储文件中。EXPDP可以导出表、导 出用户模式、表空间和全数据库4种方式。 4
14.2.1调用EXPDP EXPDP是服务端工具,这意味着该工具只能在 Oracle服务器端使用,而不能在Oracle客户端使用。通 过在命令提示符窗口中输入EXPDP HELP命令,可以查 看EXPDP的帮助信息,从中可以看到如何调用EXPDP 导出数据,如下所示: 清率电脑学堂 1624:22 数据对象的机制。该实用程序可以使用以下命令进行调用: scottdmp 您可以控制导出的运行方式。具体方法是:在'epdp'命令后输入 各种参数。要指定各参数,请使用关键字 格式:expdp KEYWORD=value或 KEYWORD=(value1,value2....,valueN) DR智n 或TABLES=(T1P1,T1:P2),如果T1是分区表 USERID必须是命令行中的第一个参数
14.2.1 调用EXPDP • EXPDP是服务端工具,这意味着该工具只能在 Oracle服务器端使用,而不能在Oracle客户端使用。通 过在命令提示符窗口中输入EXPDP HELP命令,可以查 看EXPDP的帮助信息,从中可以看到如何调用EXPDP 导出数据,如下所示: 5 C:\>expdp help=y Export: Release 11.1.0.6.0 - Production on 星期四, 05 6月, 2008 16:24:22 Copyright (c) 2003, 2007, Oracle. All rights reserved. 数据泵导出实用程序提供了一种用于在 Oracle 数据库之间传输 数据对象的机制。该实用程序可以使用以下命令进行调用: 示例: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp 您可以控制导出的运行方式。具体方法是: 在 'expdp' 命令后输入 各种参数。要指定各参数, 请使用关键字: 格式: expdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN) 示例: expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=scott 或 TABLES=(T1:P1,T1:P2), 如果 T1 是分区表 USERID 必须是命令行中的第一个参数
14.2.2 EXPDP命令参数 在调用EXPDP工具导出数据时,可以为该工具附加 多个命令行参数。事实上,只要通过在命令提示符窗口 清华 中输入EXPDP HELP命令,就可以了解EXPDP的各个参 数信息。 电脑学堂
6 14.2.2 EXPDP命令参数 • 在调用EXPDP工具导出数据时,可以为该工具附加 多个命令行参数。事实上,只要通过在命令提示符窗口 中输入EXPDP HELP命令,就可以了解EXPDP的各个参 数信息
14.3MPDP导入数据 IMPDP是服务器端的工具,该工具只能在Oracle 服务端使用,不能在Dracle客户端使用。与EXPDP相 清华 似,数据泵导入时,其转储文件被存放在DIRECTORY 对象所对应的OS目录中,而不能直接指定转储文件所 在的OS目录中。 电脑学堂
7 14.3 IMPDP导入数据 • IMPDP是服务器端的工具,该工具只能在Oracle 服务端使用,不能在Oracle客户端使用。与EXPDP相 似,数据泵导入时,其转储文件被存放在DIRECTORY 对象所对应的OS目录中,而不能直接指定转储文件所 在的OS目录中
14.3.1 IMPDP参数 同样,在调用MPDP工具导出数据时,也可以为 该工具附加多个命令行参数。通过在命令提示符窗口中 输入IMPDP HELP命令,就可以了解IMPDP的各个参 数信息。其中,大部分参数与EXPDP的参数相同,在 本节将主要介绍IMPDP所特有的参数。 清率电脑学堂
14.3.1 IMPDP参数 • 同样,在调用IMPDP工具导出数据时,也可以为 该工具附加多个命令行参数。通过在命令提示符窗口中 输入IMPDP HELP命令,就可以了解IMPDP的各个参 数信息。其中,大部分参数与EXPDP的参数相同,在 本节将主要介绍IMPDP所特有的参数。 8
14.3.2调用MPDP 与EXPDP类似,调用IMPDP时只需要在命令提 示符窗口中输入IMPDP命令,即可调用IMPDP工具: 同样,MPDP也可以进行四种类型的导入操作:导入 表、导入用户模式、导入表空间和导入全数据库。 清率电脑学堂
14.3.2 调用IMPDP • 与EXPDP类似,调用IMPDP时只需要在命令提 示符窗口中输入IMPDP命令,即可调用IMPDP工具。 同样,IMPDP也可以进行四种类型的导入操作:导入 表、导入用户模式、导入表空间和导入全数据库。 9
14.3.3移动表空间 使用EXPDP和IMPDP还可以实现移动表空间,即将 表空间从一个数据库移动到另一个数据库中。在Oracle 清 10g前,移动表空间只能在相同的操作系统平台之间进 电 行。在Oracle11g中,不仅允许在相同平台之间移动表 空间,而且允许在不同平台之间移动表空间。通过查询 动态性能视图V$TRANSPORTABLE PLATFORM,可 学堂 以显示在哪些OS平台之间可以移动表空间
10 14.3.3 移动表空间 • 使用EXPDP和IMPDP还可以实现移动表空间,即将 表空间从一个数据库移动到另一个数据库中。在Oracle 10g前,移动表空间只能在相同的操作系统平台之间进 行。在Oracle 11g中,不仅允许在相同平台之间移动表 空间,而且允许在不同平台之间移动表空间。通过查询 动态性能视图V$TRANSPORTABLE_PLATFORM,可 以显示在哪些OS平台之间可以移动表空间