`

oracle 数据的导入和导出

阅读更多

 

oracle 11G版本参考:http://ethanwooblog.iteye.com/blog/1397429

1 、命令行的导入导出命令

Oracle 数据导入导出imp/exp 就相当于oracle 数据还原与备份。exp 命令可以把数据从远程数据库服务器导出到本地的dmp 文件,imp 命 令可以把dmp 文件从本地导入到远处的数据库服务器中。利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用

 

导出:exp  user/pwd@orcl   file=d:\data0409.dmp rows=y log=d:\log0409.txt

 

导入:  imp  user/pwd@orcl   file=d:\data0409.dmp full=y log=d:\imp_log0409.txt

 

建议:养成在导入导出时输出日志文件的习惯,发生错误时方便分析错误来源

 

1  将数据库TEST 完全导出, 用户名system  密码manager  导出到D:\daochu.dmp

  exp  system/manager@TEST   file=d:\daochu.dmp full=y

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

  exp  system/manager@TEST   file=d:\daochu.dmp  owner=(system,sys)

  3  将数据库中的表inner_notifynotify_staff_relat 导出

  exp  aichannel/aichannel@TESTDB2   file= d:\data\newsmgnt.dmp tables=(inner_notify,notify_staff_relat)

  4  将数据库中的表table1 中的字段filed1"00" 打头的数据导出

  exp  system/manager@TEST   file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"

  上面是常用的导出,对于压缩,既用winzipdmp 文件 可以很好的压缩。

  也可以在上面命令后面 加上  compress=y  来实现。

  数据的导入

  1  D:\daochu.dmp  中的数据导入  TEST 数据库中。

  imp  system/manager@TEST   file=d:\daochu.dmp

  imp  aichannel/aichannel@HUST   full=y  file=file= d:\data\newsmgnt.dmp ignore=y

  上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。

  在后面加上  ignore=y  就可以了。

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

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

  基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。

  注意:

  操作者要有足够的权限,权限不够它会提示。

  数据库时可以连上的。可以用tnsping TEST  来获得数据库TEST 能否连上。

 

 

 

 

PL/SQL Developer  导出数据脚本、数据

 

1 、如果只导出表的结构(建表语句),不导出表的数据,可用Tools--Export User Objects

选中要导出的表,设置好导出的路径和各个参数后,点击ExportOK

 

PS :这种方式只能导出属于这个用户的表,其他用户的表不能导出,建议用命令行导出(exp, imp

 

2 、如果想将表结构,表的数据,触发器,函数之类的全部导出,可用Tools--Export Tables

 

选中要导出的表(可选多个),导出方式有三种:

 

Oracle Export Sql Insertpl/sql developer

第一种是导出为.dmp 的文件格式,.dmp 文件是二进制的,可以跨平台,还能包含权限,效率也很不错,用得最广

 

第二种是导出为.sql 文件的,可用文本编辑器查看,通用性比较好,但效率不如第一种,适合小数据量导入导出。尤其注意的是表中不能有大字段(blob,clob ),如果有,会提示不能导出,可以用第一种和第三种方式导出。

 

第三种是导出为.pde 格式的,.pdePl/sql developer 自有的文件格式,只能用Pl/sql developer 自己导入导出;不能用编辑器查看,效率不知道怎么样

 

PS: 只有“Oracle Export ”方式导出再导入后,表结构和索引结构没有发生变化,另两种方式都改变了索引类型。

 

导入的情况和导出一样

 

1. 完整的导出整个数据库表结构即dmp 文件方法:

Tools-->Export Tables , 选择Oracle Export  默认选项即可,在Output file 选择一个输出目标

点击Export, 即可导出表结构

 

比较:这样导出的dmp 文件大小比直接用exp 命令导出的文件要小

 

 

2. 导出表中数据:

Tools-->Export Tables : 选择SQL Inserts  遇到大字段(clob,blob) 会出问题导不出来,在此可以

选择需要导出的表,在Output file 中选择导出的目标,点击Export 即可导出,在此有几个选项

可以去掉所有的可选项直接导出

 

3. 导出数据库中所有的或是所选表的数据库建表脚本:

Tools-->Export User Objects 去掉下面三个include * 可选项,选择Single file)Output file

中选择输出目标,点击Export 即可

 

 

 

exp本地导出与imp本地导入

exp命令:
1 exp username/psw@TEST file=d:test.dmp full=y
2 exp username/psw@TEST file=d:test.dmp owner=(ly)
3 exp username/psw@TEST file= d:test.dmp tables=(grid1,grid2) 
1其中一是将Test(与某一数据库对应的oracle服务名)数据库进行整体导出
2将属于用户ly的所有表导出
3将表grid1,与grid2导出
d:test.dmp是导出的文件地址

imp命令:
1 imp system/psw@TEST file=d:test.dmp
2 imp system/psw@TEST full=y file=d:test.dmp ignore=y
3 imp system/psw@TEST file=d:test.dmp tables=(grid1)ignore=y表示如果被导入的数据库中某个表已经存在就忽略不导入那个表
3表示只导入grid1这个表

在导入导出前要先测试下对应的数据库是否是通的:tnsping test来测试,同样test是服务名
所有命令可在cmd下执行


用exp/imp远程操作数据库

对ORACLE数据库进行远程操作,假设数据库在192.168.1.110上,具体方法如下:
一、在客户端创建和服务端对应的服务名
方法1:
修改tnsnames.ora文件
加入远程服务器的命名:

Sql代码 
TEST_ORCL =   
(DESCRIPTION =   
    (ADDRESS_LIST =   
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.110)(PORT = 1521))   
    )   
    (CONNECT_DATA =   
      (SERVICE_NAME = orcl)   
    )   
)

方法2:

在oracle客户端,打开net manager。

创建一个服务命名TEST_ORCL,主机IP为:192.168.1.110,服务名orcl,端口1521


二、测试远程服务器是否畅通

进入到cmd后,执行命令:tnsping TEST_ORCL。

三、远程操作数据库
导出:

Sql代码 
1:exp username/password@TEST_ORCL file=bak_filepath 
2:exp username/password@TEST_ORCL full=y file=bak_filepath
username 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径

导入:

Sql代码 
1:imp username/password@TEST_ORCL file=bak_filepath full=y 
2:imp username/password@TEST_ORCL/database_name file=bak_filepath full=y 
3:imp username/password@TEST_ORCL file=bak_filepath fromuser=fromadmin touser=toadmin

username 用户名,password 密码,TEST_ORCL 客服端服务名,bak_filepath 备份文件存放的路径
fromadmin 备份数据的用户名,toadmin 还原数据库的用户名。database_name 还原到那个数据库上

full=y 将数据库整体导出,包括表结构等。

 

2
1
分享到:
评论

相关推荐

    oracle数据导入、导出工具

    如果这个文件是与Oracle数据导入导出相关的,那么它可能包含了关于如何使用expdp和impdp的步骤、示例脚本,或者是准备导入的测试数据。 在实际操作中,确保数据导入导出的安全性和正确性非常重要,比如要备份重要...

    Oracle数据库导入导出工具

    - `expdp`和`impdp`:Oracle Data Pump是Oracle提供的高效数据导入导出工具,支持大量数据的快速传输。 - `sqlplus`:通过SQL命令行工具,配合`INSERT INTO SELECT`语句或`CREATE TABLE AS SELECT`进行数据导入...

    oracle数据导入导出

    ### Oracle 数据导入导出 imp/exp 命令详解 #### 一、概述 在数据库管理领域,Oracle 提供了强大的工具来支持数据的备份与恢复,其中 `imp`(Import)与 `exp`(Export)命令是进行数据迁移时常用的工具之一。本文...

    oracle 数据导入导出

    Oracle 数据导入导出是数据库管理中的重要操作,用于在不同环境之间转移数据,备份和恢复数据,以及进行数据迁移。本文将深入探讨Oracle数据库的数据导入导出机制,包括使用的主要工具、过程和最佳实践。 Oracle ...

    oracle 数据泵与传统的导入导出的区别与实践

    通过理解并掌握Oracle数据泵的这些特点和使用方法,数据库管理和开发人员可以更高效地进行数据迁移、备份和恢复,提升工作效率,同时确保数据的完整性和一致性。在实际工作中,可以根据具体需求选择合适的数据泵操作...

    Oracle数据导入导出

    总结,Oracle数据导入导出涉及到多个方面,包括数据的备份、迁移、恢复和安全性管理。使用Kshell和bat脚本自动化这些过程,能够提高效率,减少人为错误。在实际操作中,应根据具体需求选择合适的工具和方法,同时...

    关于 Oracle 的数据导入导出及 Sql Loader (sqlldr)

    1. **Oracle数据导入导出** Oracle提供了多种数据导入导出工具,包括`expdp`(Export Data Pump)和`impdp`(Import Data Pump)以及传统的`exp`和`imp`。Data Pump工具提供了更快的速度和更大的灵活性,支持并行...

    oracle数据泵导入导出工具

    oracle数据泵导入导出工具

    oracle数据泵导入导出原件bat

    在Oracle数据泵的场景中,我们可以创建一个bat文件来自动化数据导入和导出的过程,提高工作效率。 1. **数据泵导出(expdp)**: 在Oracle中,导出数据通常使用`expdp`命令。这个命令需要指定数据库连接信息(如...

    oracle的impdp和expdp数据泵导入导出全备数据库-详细笔记文档总结

    Oracle 的 IMPDP 和 EXPDP 数据泵导入导出全备数据库详细笔记文档总结 Oracle 的 IMPDP 和 EXPDP 是两个强大的数据泵工具,用于将 Oracle 数据库中的数据导入或导出到其他数据库或文件中。在本文档中,我们将详细...

    Oracle 19c 备份恢复-导入导出

    Oracle 19c 备份恢复-导入导出 ...Oracle 19c 备份恢复-导入导出是指使用 exp 和 imp 工具实现数据库的备份恢复和数据的导入导出,通过选择合适的工作方式、模式和选项,可以满足不同的备份恢复和数据导入导出需求。

    ORACLE数据导入导出

    oracle数据导入导出 /*根据SCHEMAS导出数据,VERSION去掉时导出当前oracle的版本,在dos执行,文件导出完成后会显示导出文件的存放目录*/ expdp ewin/123321@172.20.0.31/mespr

    Linux下Oracle数据导入导出方法

    本文将详细解析Linux下Oracle数据导入导出的方法,包括使用exp和imp工具的具体操作流程。 ### Linux下Oracle数据导入导出方法 #### 1. Oracle数据导出(Exp) 在Linux系统中,Oracle数据导出主要通过`exp`命令来...

    Oracle数据导入/导出软件

    Oracle数据导入/导出是数据库管理中的重要环节,它涉及到数据迁移、备份、恢复和数据分析等多个方面。OraLoader作为一款专门针对Oracle数据库的工具,提供了高效、便捷的数据导入和导出功能。以下是对OraLoader及其...

    ORACLE数据定时导入导出工具

    下面我们将详细探讨这些工具在数据导入导出和定时备份中的应用。 1. **Data Pump**: Oracle Data Pump 是 Oracle 10g 引入的一个高级数据迁移工具,它提供了高速的数据导入和导出功能。Data Pump 包括 `expdp`...

    Oracle 数据导入导出

    Oracle 数据导入导出命令解析 Oracle 数据库的导入导出操作是数据库管理员的日常工作之一,对于数据的导入导出命令的熟悉和掌握是非常重要的。本文将对 Oracle 数据库的导入导出命令进行详细的解析,并对其相应的...

    Oracle数据导入导出命令.pdf

    ### Oracle 数据导入导出命令详解 #### 一、概述 Oracle 数据库系统是业界领先的数据库管理系统之一,提供了强大的数据管理功能。在Oracle中,数据的导入导出是一项非常重要的任务,尤其是在需要迁移数据、备份数据...

Global site tag (gtag.js) - Google Analytics