`

Oracle服务器端数据导出导入

阅读更多
一、数据操作前的准备
(1).创建逻辑目录
登录数据库服务器,登录数据库(最好是dba账号)
$ sqlplus umcc/umcc123

SQL> create directory UMCC_DMP as '/export/home/umcc/dmp'; --创建目录映射(逻辑目录)
SQL> grant read,write on directory UMCC_DMP to public; --将目录映射授权
SQL> select * from dba_directories; --查看目录映射

(2).创建日志文件并授权
$ vi import.log
$ chmod 777 ./import.log

此步骤导出与导入前都需要先确认。


二、数据导出
数据导出,输入如下命令:
$ expdp DIRECTORY=UMCC_DMP DUMPFILE=bsn01.dmp TABLES=umcc.T_PROCESS,umcc.T_REPORT_CONDITION_TEMPLATE,umcc.T_REPORT_CUSTOM,umcc.REPORT_INFORMIXDB_VDEAL,umcc.T_NETWORKVIEW_UNIT_RELATION,umcc.T_TOPO_NODE_VIEW LOGFILE=portal.log

执行,然后输入账号、密码

参数解析:
DIRECTORY 指定逻辑目录。
DUMPFILE  指定数据文件名。
TABLES    指定导出那些表,表用英文逗号分隔。
LOGFILE   指定日志文件。
CONTENT   指定要导出的内容。
该选项用于指定要导出的内容,默认值为ALL。
CONTENT={ALL | DATA_ONLY | METADATA_ONLY}
当设置CONTENT为ALL时,将导出对象定义及其所有数据。为DATA_ONLY时,只导出对象数据。为METADATA_ONLY时,只导出对象定义。

expdp zftang/zftang@zftang directory=dmp  dumpfile=test.dmp content=metadata_only --只导出对象定义
expdp zftang/zftang@zftang directory=dmp  dumpfile=test.dmp content=data_only --导出所有数据


三、数据导入
数据导入可以指定导入那些表和所有表数据导入。

方法一:数据文件里面所有表都导入。
impdp umcc/umcc123 DIRECTORY=UMCC_DMP REMAP_TABLESPACE=TS_UMCC:TS_ITMP DUMPFILE=bsn01.dmp table_exists_action=truncate LOGFILE=import.log

方法二:指定数据文件里的表导入。
impdp umcc/umcc123 directory=UMCC_DMP REMAP_TABLESPACE=TS_UMCC:TS_ITMP dumpfile=bsn01.dmp table_exists_action=truncate TABLES=T_PROCESS,T_REPORT_CONDITION_TEMPLATE,T_REPORT_CUSTOM,REPORT_INFORMIXDB_VDEAL,T_NETWORKVIEW_UNIT_RELATION LOGFILE=import.log


参数解析:
REMAP_SCHEMA      用户切换。REMAP_SCHEMA当你从A用户导出的数据,想要导入到B用户中去,就使用这个 REMAP_SCHEMA=A:B
REMAP_TABLESPACE  表空间切换。数据库对象本来存在于tbs_a表空间,换到tbs_b,就用这个 REMAP_TABLESPACE=tbs_a:tbs_b 所有tbs_a中的对象都会建在tbs_b表空间中。

TABLE_EXISTS_ACTION   表一存在数据处理方式。
使用imp进行数据导入时,若表已经存在,要先drop掉表,再进行导入。
而使用impdp完成数据库导入时,若表已经存在,有四种的处理方式:
1) skip:默认操作;
2) replace:先drop表,然后创建表,最后插入数据;
3) append:在原来数据的基础上增加数据;
4) truncate:先truncate,然后再插入数据。

使用EXPDP和IMPDP时应该注意的事项:
EXP和IMP是客户端工具程序,它们既可以在客户端使用,也可以在服务端使用。
EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。
IMP只适用于EXP导出的文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出的文件,而不适用于EXP导出文件。

expdp或impdp命令时,可暂不指出用户名/密码@实例名 as 身份,然后根据提示再输入,如:
expdp schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;

其他数据操作扩展:
四、导出数据
1)按用户导
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;

2)并行进程parallel
expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott3.dmp parallel=40 job_name=scott3

3)按表名导
expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1;

4)按查询条件导
expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';

5)按表空间导
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,example;

6)导整个数据库
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y;


五、还原数据
1)导到指定用户下
impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=scott;

2)改变表的owner
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system;

3)导入表空间
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=example;

4)导入数据库
impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y;

5)追加数据
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION

参考:
http://www.cnblogs.com/luluping/archive/2010/03/16/1687093.html
分享到:
评论

相关推荐

    Oracle数据泵导入导出

    - **expdp/impdp**:只能在Oracle服务器端运行。 2. **兼容性**: - **exp/imp**:只适用于由exp导出的文件。 - **expdp/impdp**:只适用于由expdp导出的文件。 3. **性能**: - **expdp/impdp**:利用多线程...

    Oracle_数据泵导出和导入

    这意味着所有的导入/导出操作实际上是通过客户端应用调用服务器端 API 来实现的。一旦数据迁移任务启动,客户端可以断开连接,而任务将在服务器端持续运行。 #### 三、DIRECTORY 对象的作用与配置 数据泵操作涉及...

    Oracle 数据泵导出和导入.docx

    EXPDP 命令用于导出数据,而 IMPDP 命令用于导入数据。下面是一个使用 EXPDP 命令导出数据的示例: [oracle@LinuxRedHat u03]$ expdp system/mingyue@HS2008 schemas=hs_his,hs_futures dumpfile=expdp_test.dmp ...

    Oracle数据库的导出与导入操作

    在准备导入数据到另一Oracle数据库实例时,以下条件须被考虑: 1. **目标服务器控制**:确保能控制目标Oracle数据库服务器。 2. **操作系统一致性**:目标服务器同样应运行在Windows操作系统上。 3. **Oracle管理...

    Oracle11g和oracle10g之间数据的导入导出.

    ### Oracle11g与Oracle10g之间数据的导入导出 #### 一、Oracle的IMP/EXP特性 Oracle提供了IMP/EXP工具用于数据库的导入导出操作,这些工具可以帮助我们在不同版本的Oracle数据库之间迁移数据。根据Oracle的IMP/EXP...

    oralce数据泵导入导出数据

    Oracle 数据泄导入导出数据 ...本文详细介绍了 Oracle 数据泄导入导出数据的操作方法,包括连接 Oracle 数据库、创建操作目录、授予读写权限、导出数据、导入数据等步骤,并详细分析了数据泄导出和导入数据的参数。

    Oracle10g导入导出

    Oracle Data Pump 是一个服务器端工具,其设计目的是为了替代传统的`exp`和`imp`命令。尽管在 Oracle 10g 中仍然支持这两个命令,但 Data Pump 提供了更多的功能和更高效的性能。 ##### 2.2 数据泵导出导入的作用 -...

    Oracle导入导出.docx

    在Oracle客户端和服务器端都可以运行EXP命令,客户端使用时需提供连接字符串,而服务器端通常不需要。导出过程中,EXP会同时导出对象的依赖关系,如索引、触发器和约束。 总的来说,Oracle的EXP和IMP工具虽然相对...

    Oracle数据库导出导出Execl,txt,word等文档数据

    **注意:** 导入操作通常在服务器端执行,而不是客户端。 ##### 3.2 使用PL/SQL Developer工具导入数据 **步骤1:** 在PL/SQL Developer工具中选择“导入表”(Import Tables)。 **步骤2:** 在导入对话框中选择...

    利用Oracle中的工具解决数据的导出/导入问题.pdf

    Data Pump包括两个主要的实用工具:expdp(导出)和impdp(导入),它们在服务器端执行,从而提高了性能。 1. **Data Pump 导出 (expdp)** Data Pump 导出工具(expdp)用于从Oracle数据库中快速导出数据。与传统...

    Excel百万级别数据的导入和导出

    9. **并发处理**:多线程或分布式处理可以加速数据导入导出,尤其是在服务器端。例如,使用Java的ExecutorService或Spring的TaskExecutor,或者借助分布式计算框架如Hadoop。 10. **性能监控与调优**:在实际操作中...

    oracle中的导入导出工具,如何使用?

    Oracle数据库系统提供了一套强大的导入导出工具,用于数据的备份、恢复、迁移以及对象的移动。这些工具主要由EXPDP(数据泵导出)和IMPDP(数据泵导入)组成,它们是Oracle 10g及更高版本中引入的增强型工具,相较于...

    SSI实现 excel 与ORACLE 之间的导入导出

    在IT行业中,数据的导入导出是常见的操作,特别是在企业级应用中,如Oracle数据库的管理。本主题聚焦于如何使用Server-Side Include (SSI)技术来实现在Excel与Oracle数据库之间的数据交互。SSI通常用于网页开发,...

    Oracle数据库中业务数据文本导出.pdf

    不同于EXP和IMP工具,它们用于Oracle数据库之间的数据导入导出,UTL_FILE包导出的文件是文本格式,可以被任何支持文本导入的数据库系统所接受。使用这个包的一个关键优势在于,它减少了网络流量,因为数据处理和输出...

    Oracle中导入文本数据的方法

    确保服务器端的监听服务已经启动。可以通过以下命令进行测试: ```bash sqlplus username/password@serviceName ``` 如果连接成功,则说明监听服务正常运行。 ##### 2. SQL*Loader命令导入数据 SQL*Loader是...

    Oracle11g和10g互转导入导出方法.docx

    Oracle 11g和10g之间通过数据泵工具进行互转,涉及的主要操作有创建目录、授权、导出和导入数据。在整个过程中,确保字符集匹配、操作不中断、检查日志以及对比导入后的表数量至关重要,这些步骤有助于确保数据完整...

Global site tag (gtag.js) - Google Analytics