dmp是什么文件 oracle_oracle还原dmp文件/oracle快速还原dmp文件 - CSDN
精华内容
参与话题
  • oracle导入dmp文件

    2018-12-21 14:40:34
    问题描述:如题     解决方法: imp ccw/ccw@GHY2 file = C:\Users\41182\Desktop\temp\1221.dmp log = C:\Users\41182\Desktop\temp\yx_base.log full = y  

    问题描述:如题

     

     

    解决方法:

    imp ccw/ccw@GHY2 file = C:\Users\41182\Desktop\temp\1221.dmp log = C:\Users\41182\Desktop\temp\yx_base.log full = y
    

     

    展开全文
  • Oracle 导入数据库dmp文件的几种方式

    千次阅读 2018-10-09 15:36:08
    使用cmd命令进行导入 进入cmd直接输入命令 imp 用户名/密码@监听器路径/数据库实例名称 file='d:\数据库文件.dmp' full=y ignore=y 1 例如: ...imp mislogin/mislogin@localhost/...使用Oracle的bin目录imp.exe导...

    使用cmd命令进行导入

    进入cmd直接输入命令

    imp 用户名/密码@监听器路径/数据库实例名称 file='d:\数据库文件.dmp' full=y ignore=y
    
    • 1

    例如:

    imp mislogin/mislogin@localhost/JFJOA file="d:\data.dmp" full=y ignore=y 
    
    • 1

    导入数据库

    使用Oracle的bin目录imp.exe导入

    打开Oracle主目录
    E:\app\shaoduo\product\11.2.0\dbhome_1\BIN
    找到impdb.exe 进行导入
    使用管理员身份运行。输入密码,输入密码 再输入dmp 的路径, 后边会出现 什么 yes 什么 no的 看情况输入回车就可以了。

    使用PL/SQL 的tools工具进行导入

    这里写图片描述
    这里写图片描述

    import即可

    --------------------- 本文来自 shaoduo 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/shaoduo/article/details/70942016?utm_source=copy

    展开全文
  • Oracle dmp文件结构探秘

    千次阅读 2020-08-21 16:10:12
    前几天接手了一个解析oracle dmp文件的任务(目前我已离职)。oracledmp文件实际上是一堆16进制的代码,它用于oracle数据库的导入和导出。我们的需求是找出其中的规律,并抓取出其中的建表语句和insert语句。目前...

    前几天接手了一个解析oracle dmp文件的任务(目前我已离职)。oracle的dmp文件实际上是一堆16进制的代码,它用于oracle数据库的导入和导出。我们的需求是找出其中的规律,并抓取出其中的建表语句和insert语句。目前该解析器初步实现,11g下能跑出结果。下面就来揭示出oracle dmp文件结构的一些秘密吧。

    上图所示的便是oracle dmp文件的部分内容(需要说明的一点是,我是用Nodepad++打开的文件,但是默认情况下其打开是一堆乱码,需要下载其十六进制编辑器插件,在Nodepad++中是HEX-Editor),最左边一列是地址指针,之后的列便是其具体的内容。其中两个十六进制数是一对,表示一个字节。可以看出,不管是地址指针还是数据都是用十六进制表示的。

    其文件表结构大致如下所示:

    由上可知,红色的部分便是我们需要的数据,剩下的无用数据并不是真的无用数据,只是对于我们而言是不关心的数据而已。其中包括一些表的元数据、索引的建立等等。有一点需要说明的是,除了文件头部的固定头之外,上述图演示的是一张表的结构示意图。如果一个oracle dmp文件有多张表,则会有多个上述图所演示的表结构片段(不包括固定头)。这点需要留意。

    该解析器是使用RandomAccessFile来进行读取的,其中的readLine方法并不是每次读取一行数据,而是以“0a”作为分隔,每次读出两个“0a”之间的内容。这点需要特别留意。首先需要跳过一个0x90 * 0x10 + 0xD的固定头,来到下一个“0a”处。跳过之后来到下图红框之后的位置处:

    此时调用三次readLine方法分别获得表声明表创建insert批处理语句(从最后面的描述列也可以略知一二)。接下来就是拼接具体的insert语句了。抓到真实的数据字段,和insert批处理语句进行拼接即可。在我们调用了三次readLine方法后,当前指针来到了下面红框的位置:

    之后我们需要找到“00 00 00 00 00”,五个“00”这样结构的位置处,在其之后便是真实的数据字段位置了。在上图中便是蓝框框中的内容处。之后我们读两个字节,这里是“24 00”,该数据表示之后插入数据的字节数比如说“24 00”换成十进制是36(经过实测,“00 24”和“24 00”都代表十进制的36,这里需要进一步分析总结),表示之后插入数据是36个字节,如上面所示便是向后数的36个字节。之后继续读两个字节,也就是“10 00”,十进制是16,之后读取16个字节…以此类推。

    那么什么时候是一行数据读取完呢?当我们遇到两个“00”也就是“00 00”的时候,代表着一行数据的结束。上述所说过程如下图所示,其中红框是此时需要插入值的前后校验位、黄框是插入的真实数据、蓝框框中的便是一行结束的位置:

    之后便开始了下一行数据的解析,和之前的过程一样,这里不再赘述。那么什么时候是一张表的所有插入语句都结束的位置呢?当遇到“00 00 ff ff 0a”这样的结构时,则代表当前表的插入过程都结束了。如下所示:

    另外需要说明的一点是当我们在“00 00”后读到的下一字节是“fe”时,代表该位置是一个空字段。这点需要留意。

    此时我们有了insert的批处理语句,也有了真实的插入数据的语句。就可以将这两者结合,拼接出真正的insert语句了。比如说我们有了批处理语句:“INSERT INTO "TABLE1" ("A", "B")  VALUES (:1, :2)”和对应的两行真实数据:“'q1'、'q2'”和“'q3'、'q4'”,我们就可以使用正则来将这二者拼接,得到两条insert语句:“INSERT INTO "TABLE1" ("A", "B")  VALUES ('q1', 'q2')”和“INSERT INTO "TABLE1" ("A", "B")  VALUES ('q3', 'q4')”。

    至此,我们完成了一张表的解析工作。接下来,继续去寻找下一次表的创建语句、批处理语句和真实数据语句。不断读取数据,找出第一句是“TABLE”开头和第二句是“CREATE TABLE”开头的语句。如果有这样的结构,则表示下一张表的解析工作就此开始。之后的解析过程和上述所说的内容一样,这里也不再做讲解了。

    那么,什么时候才是一个dmp文件真正解析结束呢?请看下图:

    当我们不断readLine时读取出的字符串是“EXIT”时,此时代表着文件解析的结束。

    至此,一张oracle dmp文件解析的全过程就完成了。但是需要注意的是,上述我所说的文件结构只是最一般的情况,有时也会有特例出现。比如:一张表插入真实数据的结束不仅可以用“00 00 ff ff 0a”来表示,也可以用“00 00 3F 3F 0A”来表示;有时候明明两个字符的校验位是“0c 00”,也就是十进制的12,表示后面的12个字节是一个数据段,但通过查看发现,后面的24个字段其实是作为一个整体的(我感觉是跟中文的编码集有关,一个中文对应两个字节,但有些中文却不是这样的规则。待考证)。同时,对于Blob、Clob字段的解析,我们暂时是没有实现的。有兴趣的同学可以查看,Blob和Clob字段首先会跟着一堆的“00”,且个数不固定,然后是跟着一些十六进制数。这跟我们现有的解析规则发生了冲突(看来Oracle对于Blob和Clob字段有着特殊的处理)。尽管如此,上述的解析过程也可以让我们对oracle的dmp文件有了一个初步的认识。下面是我解析出上面这个oracle dmp文件结果的部分截图,感兴趣的同学可以自行尝试实现一下:

    GitHub源码:https://github.com/MonkeyOneCool/OracleDmpParser

    展开全文
  • 2010年5月12日 SQL> alter user scott account unlock; ...SQL> alter user scott ...exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。

    2010年5月12日

    SQL> alter user scott account unlock;

    SQL> alter user scott identified by pan;

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

    执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,

    DOS中可以执行时由于 在oracle 8i 中 安装目录\ora81\BIN被设置为全局路径,

    该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。

    oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。 SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。

    下面介绍的是导入导出的实例。 数据导出:

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

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

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

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

    3 将数据库中的表table1、table2导出

    exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=( table1、table2)

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

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

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

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

    数据的导入:

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

    imp system/sql@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/sql@TEST file=d:\daochu.dmp tables=(table1)

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

    2010年5月12日

    析Oracle用户解锁命令的两则实现方法 2009-11-3 作者: 编辑:崔晓帆 点击进入论坛

    关键词:Oracle 解锁

    在安装完Oracle 10g之后,想打开sql*plus来学习,然后按照书上的步骤用scott用户来连接数据库,可输了好几次都提示一个错误。

    error: the account is locked

    然后上网查了一下之后发现这个用户被锁定了,至于它为什么被锁定,可能是下面几个原因。

    1.尝试多次登录未成功.(可能密码不正确)

    2.此用户被管理员手工锁定.

    3.用户密码到期.未按时修改密码.等等...

    这个用户肯定是登陆不了了,然后我用system这个用户登录,可是登了半天都没有进去,又去网上查,网上面大都是关于 oracle 9i的用户和密码,后来我记得在安装的时候就提示输入了,用那个试了一下就连接上了,所以在oracle 10g的system这个用户的密码不是默认的,而是安装的时候自己设定的。

    拿system登录进去之后,执行下面的命令:

    SQL> alter user scott account unlock;

    用户已更改。

    这样就完成解锁的操作。接下来,你还可以重新给scott这个用户设定密码

    修改scott的登录密码

    SQL> alter user scott identified by pan;

    用户已更改。

    ok了,你再拿scott 和 pan来登录就可以了!

    SQL> conn scott/pan

    2010年5月12日

    已连接。

    新装完Oracle 10g后,用system/password可以正常登录,而使用scott/tiger用户却不能登录:

    conn scott/tiger error:Oracle 10g the account is locked Oracle 10g the password has expired

    原因:默认Oracle 10g的scott不能登陆。被禁用了。

    解决方法:

    首先确认已经安装oracle 数据库和客户端

    .在客户端DOS下执行如下语句:

    注意提示符号

    c:\sqlplus /nolog sqlp\ conn sys/system@oracle10 as sysdba // sys为当前的oracle 用户 system 为该用户密码 oracle10 为SID # alter user soctt account lock; // 把 scott用户锁定 # alter user scott account unlock; //把scott用户解锁 # alter user scott identified by scott //修改scott用户密码为 scott,scott用户默认密码为 tiger

    1 Dos下输入C:\sqlplus /nolog

    2 以DBA的身份登录

    conn sys/password as sysdba;

    3 解锁

    alter user scott account unlock;

    4 弹出一个修改密码的对话框,修改密码

    conn scott/tiger SQL> conn sys/sys as sysdba; Connected. SQL> alter user scott account unlock; User altered. SQL> commit; Commit complete. SQL> conn scott/tiger//请输入新密码,并确认后OK Password changed Connected.

    oracle 10g数据泵之impdp

    2010年5月12日

    (2008-08-18 08:47:50)

    转载

    标签: 分类: 数据库

    程序

    it

    要了解impdp,请先了解导出,我之前作过导出的笔记:oracle 10g数据泵之expdp。这两个笔记也许只对程序员有用,通常用于把正式区的数据导入到测试区,对数据库管理员也许帮助不大,他们使用这些工具大多是用于数据备份。

    impdp可以将数据加载到整个数据库、特定的方案(也就是用户)、特定的表空间或者特定的表,也可以将表空间传输到数据库。impdp支持网络模式操作,即从另一个数据库加载数据。

    使用impdp导入数据

    1.指定转储文件(存放导出数据的文件)存放的目录

    SQL>connect sys/password as sysdba;

    SQL>create directory dump_dir as ?d:\dump?;

    2.使用impdp命令

    开始-->运行-->cmd

    impdp username/password parameter1[,parameter2,….]

    其中,username表示用户名;password表示用户密码;parameter1和parameter2表示参数。参数的类型有近40个,可以使用命令impdp help=y查看所有参数和参数的含义。下面介绍一些对导入数据库和表需要的常用参数,它们的含义和在expdp中的含义完全相同。

    content :指定导入的内容。语法格式:content={all| data_only|metadate_only}。其中all表示导入对象定义及其数据,data_only表示只导入对象数据,metadate_only表示只导入对象定义。默认为all

    directory:指定转储文件和日志文件所在的默认位置(也就是保存数据的文件位置)。语法格式:directory=direcotry_object。direcotry_object 是create directory语句创建的目录对象。

    dumpfile:指定转储文件的名称。语法格式:dumpfile=[ direcotry_object:]file_name[,….]。direcotry_object默认为上面directory参数指定的目录对象。file_name默认名称是expdat.dmp。如果导入文件过大,可以指定多个文件名,如direcotry_object:mydb_%U.dmp。”%U”是一个占位符,使用这种方式不会出现同名的文件。

    logfile:指定日志文件的名称。语法格式:logfile=[ direcotry_object:]file_name。direcotry_object默认为directory参数指定的目录对象。file_name日志文件,默认名称是export.log。

    exclude:导入时要排除的对象。语法格式: exclude=object_type[:name_clause][,….]。object_type表示对象类型,如table、view、index、function、preocedure,name_clause表示使用SQL语句,指定对象名的筛选条件,如table:”like ?emp%?”表示排除emp开始的任何表。

    include:导入时要包含的对象。语法格式:include =object_type[:name_clause][,….]。object_type

    2010年5月12日

    和name_clause含义同exclude参数解释一样。include和exclude不可以同时使用。当一个对象被包含时,所有相关对象也被包含。

    network_link:指定网格导入时的数据库链接名。语法格式:network_link=database_link。database_link表示远程数据库链接名。

    query:指定导入数据的where条件。语法格式:query=[schema.][table_name:]query_clause。其中schema表示方案名,也就是用户名,table_name表示表名,query_clause表示条件子句,即where子句。

    tables:指定导入表。语法格式:tables=[schema.]table_name[,….]。schema表示方案名,table_name表示表名

    full:指定是否将整个数据库导入。语法格式:full={y|n}。y表示执行数据库导入,n表不执行。默认为n。

    parfile:指定导入参数文件名。把impdp命令所需的参数写在一个文件中,执行impdp命令时指定这个文件,而不用指定各种参数

    导入实例

    顺便把expdp命令也写进来,以方便对比。为了不和上一篇导出笔记重复,这里以导入远程数据库的数据到本地数据库为例。

    导出远程数据库

    1.估算转储文件大小

    如果数据库很大,这个过程也许会执行很久。在导出数据库之前,最好先估算一下转储文件(导出到的文件)的大小,以便确定合适filesize参数值,和确定是否有足够的磁盘空间。使用语法:

    expdp username/password@234DB full=y estimate_only=y nologfile=y;

    其中estimate_only=y表示只估算转储文件的占的磁盘空间,不执行导出操作;@234DB表示远程数据库,它是在tnsnames.ora文件中定义的。

    2.导出数据库

    expdp username/password@234DB directory=dump_dir dumpfile=mydb_%U.dmp logfile=mydb.log filesize=200m full=y

    其中dump_dir表示导出文件的目录,由于这里是导出远程数据库,所以这个目录是在远程机子中的;%U是一个占位符,表示01~99的两位数,这时执行会创建如MYDB_21.DMP之类的文件

    3.导入整个数据库

    impdp username/password directory=dump_dir dumpfile=mydb_%U.dmp full=y;

    其中dump_dir表示入出文件的目录,这里要把远程导出的文件拷贝到本地机子上

    导入远程表

    2010年5月12日

    1.导出表

    expdp username/password@234DB directory=dump_dir dumpfile=mytable.dmp tables=schemas.emp

    其中schemas表示方案(即用户),emp表示远程数据库名。使用这种方式转储文件将保存在远程服务器的操作系统中。如果要把转储文件保存到本地机子,使用以下语法:

    expdp

    username/password directory=dump_dir dumpfile=mytable.dmp tables=schemas.emp network_link=to234db

    其中username/password分别是本机数据库用户名和密码,to234db是本地数据库指向远程数据库的database link。这种方式可以把数据保存到本机中,但是会产生网络流量。

    2.导入表

    impdp username/password directory=dump_dir dumpfile=mytable.dmp tables=schemas.emp

    其中schemas要和远程用户名相同,也就是说如果本地没有这个用户,要先创建用户,格式如:

    grant connect,resource to schemas identified by password。emp是要导入的表,如果本地schemas方案已经存在要导入的表,可以指定tables_exists_action参数,使用格式是tables_exists_action={skip|append|truncate|replace}这四个参数值分别表示忽略这个表、把记录追加到该表后面、先删除表数据再追加记录和使用新表替代已经存在的表。

    向Oracle数据库导入DMP文件

    说明:dmp文件为Oracle数据库备份文件。

    命令: imp:导入

    1. 获取帮助

    imp help=y

    2. 导入一个完整数据库

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

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

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

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

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

    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)

    5. 导入一个表

    2010年5月12日 imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)

    6. 从多个文件导入

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

    7. 使用参数文件

    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

    8. 增量导入

    imp system./manager inctype= RECTORE FULL=Y FILE=A

    C:Documents and Settingsadministrator>exp help=y

    Export: Release 9.2.0.1.0 - Production on 星期三 7 月 28 17:04:43 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

    通过输入 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 参数文件名

    2010年5月12日 CONSISTENT 交叉表的一致性 (N) CONSTRAINTS 导出的约束条件 (Y)

    OBJECT_CONSISTENT 只在对象导出期间设置为读的事务处理 (N)

    FEEDBACK 每 x 行的显示进度 (0)

    FILESIZE 每个转储文件的最大大小

    FLASHBACK_SCN 用于将会话快照设置回以前状态的 SCN

    FLASHBACK_TIME 用于获取最接近指定时间的 SCN 的时间

    QUERY 用于导出表的子集的 select 子句

    RESUMABLE 遇到与空格相关的错误时挂起 (N)

    RESUMABLE_NAME 用于标识可恢复语句的文本字符串

    RESUMABLE_TIMEOUT RESUMABLE 的等待时间

    TTS_FULL_CHECK 对 TTS 执行完整的或部分相关性检查

    TABLESPACES 要导出的表空间列表

    TRANSPORT_TABLESPACE 导出可传输的表空间元数据 (N)

    TEMPLATE 调用 iAS 模式导出的模板名

    在没有警告的情况下成功终止导出。

    ==================================================

    C:Documents and Settingsadministrator>imp help=y

    Import: Release 9.2.0.1.0 - Production on 星期三 7 月 28 17:06:54 2004

    Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

    可以通过输入 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

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

    2010年5月12日

    执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,

    DOS中可以执行时由于 在oracle 8i 中 安装目录\ora81\BIN被设置为全局路径,

    该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。

    oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。 SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。

    下面介绍的是导入导出的实例。 数据导出:

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

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

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

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

    3 将数据库中的表table1、table2导出

    exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=( table1、table2)

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

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

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

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

    数据的导入:

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

    imp system/sql@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/sql@TEST file=d:\daochu.dmp tables=(table1)

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

    数据泵导入:

    指令 impdp

    一:数据库所有对象的导入:

    impdp system/tiger dumpfile=pump_dir:mydatabase_%.dat

    filesize=100m nologfile=y job_name=zhang full=y estimate_only

    二:用户数据的导入:

    2010年5月12日

    impdp system/tiger dumpfile=pump_dir:mydatabase_%.dat

    filesize=100m nologfile=y job_name=zhang schemas=scott

    三:导入特定的表:

    impdp system/tiger dumpfile=pump_dir:mydatabase_%.dat

    filesize=100m nologfile=y job_name=zhang tables=scott.emp,scott.dept

    数据泵导出:

    指令 expdp

    一:数据库所有对象的导出:

    expdp system/tiger dumpfile=pump_dir:mydatabase_%.dat

    filesize=100m nologfile=y job_name=zhang full=y estimate_only

    二:用户数据的导出:

    expdp system/tiger dumpfile=pump_dir:mydatabase_%.dat

    filesize=100m nologfile=y job_name=zhang schemas=scott

    三:导出特定的表:

    expdp system/tiger dumpfile=pump_dir:mydatabase_%.dat

    filesize=100m nologfile=y job_name=zhang tables=scott.emp,scott.dept 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。

    2010年5月12日

    !!!若导入时出现有个别表不能成功导入时,只能在数据库里新建表结构,再通过imp命令导入。

    1. 根据导入表时在SQL*PLUS中的提示,会说什么表不能正确创建,在列出相应表的所有表结构。

    2. 在SQL*PLUS里复制表结构到TXT文档,设置好格式,放在C:\1.txt下。

    3. 在SQL*PLUS里通过@ C:\1.txt 运行,提示表创建结构成功。

    4. 向新创建的表导入数据。Imp system/sql@orcl file=d:\0955.dmp tables=(table1,table2,table3)

    ignore=y

    5. 观察提示,成败在此一举。

    注意:

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

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

    附录一: 给用户增加导入数据权限的操作

    第一,启动sql*puls

    第二,以system/sql登陆

    第三,create user 用户名 IDENTIFIED BY 密码 (如果已经创建过用户,这步可以省略)

    第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,

    DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,

    DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字

    第五, 运行-cmd-进入dmp文件所在的目录,

    imp userid=system/sql full=y file=*.dmp

    或者 imp userid=system/sql full=y file=filename.dmp

    执行示例:

    F:\Work\Oracle_Data\backup>imp userid=test/test full=y file=inner_notify.dmp

    屏幕显示

    Import: Release 8.1.7.0.0 - Production on 星期四 2月 16 16:50:05 2006

    (c) Copyright 2000 Oracle Corporation. All rights reserved.

    连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production

    With the Partitioning option

    JServer Release 8.1.7.0.0 - Production

    经由常规路径导出由EXPORT:V08.01.07创建的文件

    已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入

    导出服务器使用UTF8 NCHAR 字符集 (可能的ncharset转换)

    . 正在将AICHANNEL的对象导入到 AICHANNEL

    . . 正在导入表 "INNER_NOTIFY" 4行被导入

    准备启用约束条件...

    成功终止导入,但出现警告

    原文:http://www.niubb.net/a/2015/09-27/1015489.html

    展开全文
  • Oracle的安装及导入.dmp文件教程

    千次阅读 2018-07-20 09:31:19
    一、Oracle 下载 ...注意Oracle分成两个文件,下载完后,将两个文件解压到同一目录下即可。 路径名称中,最好不要出现中文,也不要出现空格等不规则字符。 官方下载地址: ...
  • 导出dmp文件: exp merchant/merchant@21.96.4.136:1521/iprs file=/home/oracle/oracle_bak_dmp/test.dmp tables=TEST2 格式:exp 用户名/密码@ip:端口/数据库名字 file=导出的文件路径 tables=表名 导出dmp文件...
  • 如何打开Oracledmp文件

    万次阅读 2010-09-28 23:52:00
    在工作中经常使用到别人...   1、如果dmp文件比较小,用文本编辑器打开就可以了。   2、如果dmp特别大,可以通过toad工具打开。在database/export/exert file browse浏览要打开的dmp即可。
  • 首先可以通过 –help命令查看命令行语句的关键字信息: 如以下的exp -help(下图仅显示本命令部分信息) ...在导出的目录中可以看到导出的dmp文件以及对应的日志: 导入: imp 用户名/密码@实例名...
  • linux下 oracle怎么导出dmp文件

    万次阅读 2018-03-31 21:42:32
    dmp文件oracle的逻辑备份文件,常用于数据库逻辑备份,数据库迁移等操作。1、先给导出的路径 赋予权限:chmod 777 /home/userct/oss-shanxi2、切换用户su oracle3、连接数据库并导出exp 用户名/密码@orcl file=/...
  • linux下 oracle怎么导入dmp文件

    万次阅读 2018-03-31 21:37:35
    先创建数据库用户:create user XXX identified by xxx default tablespace ...数据库:用户名:XXXX密码:XXXX服务器连接地址和SID:10.XX.XX.XXX:1521/orcl1、给dmp文件加权限chmod 777 /home/userct/oss-shan...
  • 如何将dmp文件导入到自己的oracle数据库中

    万次阅读 多人点赞 2016-12-16 17:26:20
    1、首先,我们可以先建立自己的一个用户表...datafile 'D:\oracle\product\10.2.0\userdata\test.dbf' (这边可以写成oracle的某个路径下) size 50m (初始大小) autoextend on;(自动扩展) 2、接下来,我们
  • 以orcl实例为例子:在此实例下频繁的删除更新数据库. 1 打开cmd窗口   2 命令sqlplus 3 输入用户名: conn / as sysdba 密码:***** 4 如果有orcl那么删除 ...create user orcl identified by orcl account...
  • linux 下oracle导入dmp文件

    万次阅读 2017-08-02 08:46:25
    linux 导dmp文件oracle
  • 更改由oracle导入的dmp文件的版本

    千次阅读 2015-02-13 12:29:09
    今天客户给了我一个从oracle11g数据库里面导出的一张表数据文件给我,文件的后缀是dmp文件,我把dmp文件导入我们的业务数据库中报错,后来网上一查是因为oracle数据库版本不一致的原因造成的,我们的业务数据库版本...
  • oracle之cmd导入dmp文件

    万次阅读 2016-06-07 19:56:59
    打开cmd窗口,执行以下格式命令: imp 用户名/密码@服务器IP:端口/服务名 file=dmp文件路径 full=y 例子,这是我的: imp ZXXT/ZXXT@192.168.20.212:1521/orcl file=E:\运政执法数据\yz\yzdata.dmp full=y
  • 有一个从oracle导出的dmp文件,需要导出.csv或者.sql再导入mysql,请问该怎么办,从来没用过oracle,装了个11g之后连服务都起不来。。
  • step1、首先知道你要导入数据库中的DMP文件(例如aa.dmp)是那个版本导出的(导出导入的版本要一致,当然11g的文件可以导出10g的DMP文件)。 step2、在sqlplus命令框中用sysdba管理员登录,connect sys/password as...
  • Oracledmp文件的导入

    千次阅读 2019-09-10 16:47:45
    2,在导入dmp文件的时候,也是利用navicat,显示没有systemdba权限 3,先创建新用户赋予systemdba权限,但是有显示insufficient privileges(权限不足) 4,放弃navicat 利用mysql service 在控制台进行操作cmd 5...
  • 1.先去新建oracle用户,记得分配权限(dba.resource,contect) 下面为新建的数据库用户:   2.接下来就是导数据。从zsj系统中用到的用户到检测认证的用户中。登录数据库服务器(linux) 但是oracle用户没有ssh登
  • oracle11g导入dmp文件(根据用户)

    千次阅读 2018-04-04 09:13:48
    需求:将该dmp文件导入本地oracle11g中。 步骤:  1、将该dmp文件拷贝到G:\oracle11g\admin\orcl\dpdump目录下;(这里是我自己的oracle11g安装目录G:\oracle11g)  2、cmd打开dos窗口;  3、键入命令:impdp...
1 2 3 4 5 ... 20
收藏数 25,372
精华内容 10,148
关键字:

dmp是什么文件 oracle