dmp文件导入oracle 已存在_oracle导入dmp文件 对象已存在 - CSDN
精华内容
参与话题
  • 搞了这么多年oracle,不论是开发和运维,自认为是都了解了,和dba差的只是熟练的问题,因为毕竟不是天天搞它。不过突然听说数据泵导入的功能,大吃一惊,好像有印象,以为是落后的,一查,竟然是先进的,10g后推出...

    背景

          搞了这么多年oracle,不论是开发和运维,自认为是都了解了,和dba差的只是熟练的问题,因为毕竟不是天天搞它。不过突然听说数据泵导入的功能,大吃一惊,好像有印象,以为是落后的,一查,竟然是先进的,10g后推出的。惭愧。用了一把,简单总结下了。和imp还是有所不同的,当用户不同时,不是用的fromuser和touser,用的是remap_schema。

    导入语句

    impdp "xixi/123456@192.168.1.234:1521/orcl" dumpfile=backup.dmp directory=dump_dir 
    remap_schema=bobo:xixi remap_tablespace=TBS_BOBO:TBS_XIXI table_exists_action=SKIP TRANSFORM=segment_attributes:n

    知识点

    当使用IMPDP完成数据库导入时,如遇到表已存在时,Oracle提供给我们如下四种处理方式:

        a.忽略(SKIP,默认行为);
        b.在原有数据基础上继续增加(APPEND);
        c.先DROP表,然后创建表,最后完成数据插入(REPLACE);
        d.先TRUNCATE,再完成数据插入(TRUNCATE)。
     
        先用EXPDP生成一份dump文件
        sec@secDB /expdp$ expdp sec/sec directory=expdp_dir dumpfile=`date +"%Y%m%d%H%M%S"`_sec.dmp logfile=`date +"%Y%m%d%H%M%S"`_sec.log
     
        分别使用四中方式真实的感知一下具体效果
        用到的IMPDP语句统一汇总在这里,方便参考。
        SKIP:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=SKIP
     
        APPEND:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=APPEND
     
        REPLACE:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=REPLACE
     
        TRUNCATE:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=TRUNCATE

    转载于:https://www.cnblogs.com/sddychj/p/9540810.html

    展开全文
  • GPS平台、网站建设、软件开发、系统运维,找森大网络科技! ...来自森大科技官方博客 ...首先询问对方数据库的表空间名称和大小,然后在你的oracle中建立相应表空间,...以把数据从远程数据库服务器导出到本地的dmp文件,imp

    GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
    https://cnsendnet.taobao.com
    来自森大科技官方博客
    http://www.cnsendblog.com/index.php/?p=1485

    首先询问对方数据库的表空间名称和大小,然后在你的oracle中建立相应表空间,最后使用命令导入、导出数据。
    补充:
    1.要新建一个数据库;
    Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可
    以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本
    地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一
    个用来测试,一个用来正式使用。
    例如:imp命令导入数据:
    imp username/password@SID file=XXX.dmp fromuser=XXX touser=XXX tables=(XXX,XXX)
    其中,fromuser指对方数据库用户名,touser指你的数据库的用户名;
    fromuser若为多个表空间的话,使用()将其括起来:fromuser=(a,b);
    touser参数仿fromuser参数;
    若只导入一部分表,使用tables参数,用()括起要导入的表;如果想全部导入,不需要指定tables参数

    下面介绍的是导入导出的实例。
    数据导出:
    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_notify、notify_staff_relat导出
    exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=
    (inner_notify,notify_staff_relat)

    上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
    也可以在上面命令后面 加上 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能否连上。
    附录一:
    给用户增加导入数据权限的操作
    第一,启动sqlpuls
    第二,以system/manager登陆
    第三,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/manager full=y file=
    .dmp
    或者 imp userid=system/manager 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
    © 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行被导入
    准备启用约束条件…
    成功终止导入,但出现警告。

    GPS平台、网站建设、软件开发、系统运维,找森大网络科技!
    https://cnsendnet.taobao.com
    来自森大科技官方博客
    http://www.cnsendblog.com/index.php/?p=1485

    展开全文
  • --删除用户若用户已经存在(可以使用Oracle自带的sqlplus进行连接) SQL> drop user USER_NAME cascade SQL> / SQL> drop tablespace USER_TABLESPACE including contents and datafiles SQL> / ...
    一  impdp 导入

    --删除用户若用户已经存在(可以使用Oracle自带的sqlplus进行连接)
    SQL> drop user USER_NAME cascade
    SQL> /
    SQL> drop tablespace USER_TABLESPACE including contents and datafiles
    SQL> /

    --创建表空间
    SQL> CREATE TABLESPACE USER_TABLESPACE DATAFILE 'USER_tablespace.DBF' SIZE 200M AUTOEXTEND ON NEXT 50M MAXSIZE UNLIMITED PERMANENT DEFAULT STORAGE(INITIAL 64K MINEXTENTS 1 MAXEXTENTS 2147483645) MINIMUM EXTENT 64K LOGGING ONLINE
    SQL> /

    --创建用户
    SQL> CREATE USER USER_NAME IDENTIFIED BY user_password DEFAULT TABLESPACE USER_TABLESPACE TEMPORARY TABLESPACE TEMP PROFILE DEFAULT
    SQL> /
    --创建用户目录
    SQL> CREATE DIRECTORY directory_name as 'filePath'
    SQL> /
    --示例 my_dir as 'D:/db_dir'

    --为用户授权
    SQL> GRANT CONNECT TO USER_NAME WITH ADMIN OPTION
    SQL> /
    SQL> GRANT DBA TO USER_NAME WITH ADMIN OPTION
    SQL> /
    SQL> GRANT UNLIMITED TABLESPACE TO USER_NAME WITH ADMIN OPTION
    SQL> /
    SQL> GRANT read, write ON DIRECTORY directory_name TO USER_NAME
    SQL> /

    --执行导入(退出sqlplus在CMD执行导入语句)
    impdp USER_NAME/user_password@SID_NAME directory=directory_name dumpfile=USER_NAME.DMP schemas=USER_NAME logfile=USER_NAME.log;
    pause;

    二 expdp 导出

    expdp USER_NAME/user_password@SID_NAME directory=directory_name dumpfile=USER_NAME.DMP schemas=USER_NAME logfile=USER_NAME.log;
    pause;
    展开全文
  • 当使用IMPDP完成数据库导入时,如遇到表已存在时,Oracle提供给我们如下四种处理方式: a.忽略(SKIP,默认行为); b.在原有数据基础上继续增加(APPEND); c.先DROP表,然后创建表,最后完成数据插入(REPLACE)...

    当使用IMPDP完成数据库导入时,如遇到表已存在时,Oracle提供给我们如下四种处理方式:

    a.忽略(SKIP,默认行为);
    b.在原有数据基础上继续增加(APPEND);
    c.先DROP表,然后创建表,最后完成数据插入(REPLACE);
    d.先TRUNCATE,再完成数据插入(TRUNCATE)。

     先用EXPDP生成一份dump文件
        sec@secDB /expdp$ expdp sec/sec directory=expdp_dir dumpfile=`date +"%Y%m%d%H%M%S"`_sec.dmp logfile=`date +"%Y%m%d%H%M%S"`_sec.log
     
        分别使用四中方式真实的感知一下具体效果
        用到的IMPDP语句统一汇总在这里,方便参考。
        SKIP:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=SKIP
     
        APPEND:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=APPEND
     
        REPLACE:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=REPLACE
     
        TRUNCATE:
        impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=TRUNCATE
    

    如果需要对导入表进行重命名 可以添加
    remap_table=schema.tablename:newtablename

    remap_table=orcl.userlogin:userlogin1127
    

    完整的imp语句如下

    impdp system/sys directory=expdp_dir dumpfile=20100401102917_sec.dmp logfile=20100401102917_sec_impdp.log TABLE_EXISTS_ACTION=TRUNCATE  tables= orcl.userlogin,orcl.userlogout remap_table=orcl.userlogin:userlogin1127
    

    directory 如不指定则默认为去oracle安装目录\admin\orcl\dpdump 文件夹中寻找dump文件
    logfile 如不指定则默认生成至directory目录下import.log每次导入自动替换

    展开全文
  • 方法一:利用PL/SQL Developer工具导出: 菜单栏---->Tools---->Export Tables,如下图,设置相关参数即可: ...1:G:\Oracle\product\10.1.0\Client_1\NETWORK\ADMIN目录下有个tnsname.ora文件,...
  • Oracle 导入数据库dmp文件的几种方式

    万次阅读 2017-04-30 10:02:36
    使用cmd命令进行导入进入cmd直接输入命令imp 用户名/密码@监听器路径/数据库实例名称 file='d:\数据库文件.dmp' full=y ignore=y 例如:imp mislogin/...使用Oracle的bin目录imp.exe导入打开Oracle主目录 E:\ap
  • 首先可以通过 –help命令查看命令行语句的关键字信息: 如以下的exp -help(下图仅显示本命令部分信息) ...在导出的目录中可以看到导出的dmp文件以及对应的日志: 导入: imp 用户名/密码@实例名...
  • 如何将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、接下来,我们
  • 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...
  • linux 下oracle导入dmp文件

    万次阅读 2017-08-02 08:46:25
    linux 导dmp文件oracle
  • 1.首先要先创建数据库,以及数据库用户; 2.用控制台进入oracle安装目录bin文件夹下面,如 ...3.开始导入dmp文件,控制台导入dmp文件有两种方法,这里推荐的这种可以看到错误信息  Imp username/password@database
  • step1、首先知道你要导入数据库中的DMP文件(例如aa.dmp)是那个版本导出的(导出导入的版本要一致,当然11g的文件可以导出10g的DMP文件)。 step2、在sqlplus命令框中用sysdba管理员登录,connect sys/password as...
  • 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
  • impdp导入dmp文件

    万次阅读 2020-05-25 12:35:53
    只能导入expdp导出的dmp文件。 expdp导出的时候,需要创建DIRECTORY 导出什么表空间,导入也要什么表空间。 导出什么用户,导入也要什么用户。 如果没有要新建。 从杭州服务器expdp导出了TOOLBOX用户的数据库dmp...
  • 有一个从oracle导出的dmp文件,需要导出.csv或者.sql再导入mysql,请问该怎么办,从来没用过oracle,装了个11g之后连服务都起不来。。
  • Oracle imp/impdp 导入dmp文件到数据库

    万次阅读 2018-09-04 10:13:45
    EXPDP和IMPDP是服务端的工具程序,他们只能在ORACLE服务端使用,不能在客户端使用。 IMP只适用于EXP导出的文件,不适用于EXPDP导出文件;IMPDP只适用于EXPDP导出的文件,而不适用于EXP导出文件。 注意:EXP不会...
  • Oracledmp文件导入

    千次阅读 2019-09-10 16:47:45
    2,在导入dmp文件的时候,也是利用navicat,显示没有systemdba权限 3,先创建新用户赋予systemdba权限,但是有显示insufficient privileges(权限不足) 4,放弃navicat 利用mysql service 在控制台进行操作cmd 5...
  • oracle 11g导出的dmp数据导入oracle10g

    万次阅读 2011-11-25 08:35:16
    oracle 11g导出的dmp文件导入oracle10g  1.进行导入表操作,提示: IMP-00010: 不是有效的导出文件, 头部验证失败 IMP-00000: 未成功终止导入   2.从网上查阅,oracle数据11g到10g是有问题的,一般由...
  • plsql导入.dmp步骤

    万次阅读 2017-10-13 22:43:20
    plsql导入.sql和.dmp文件时,会经常用到,对于初学者来说可能没有那么简单,毕竟oracle数据库比较麻烦。 下面是我自己导入.sql和.dmp文件的步骤。 1.导入.sql文件(sql文件是表结构文件,不包含数据)工具->导入表...
  • 导入dmp文件时,对于已存在的数据库实例及表处理方式:删除实例。 1.以管理员身份登录  sqlplus / as sysdba 2.停止实例  shutdown abort; 执行结果:ORACLE instance shut down. 3.启动实例 独占启动的选项是...
1 2 3 4 5 ... 20
收藏数 19,218
精华内容 7,687
关键字:

dmp文件导入oracle 已存在