如何在Oracle中使用exp和imp导出,导入dmp数据库文件

如何在Oracle中使用exp和imp导出,导入dmp数据库文件,第1张

在Oracle中使用exp和imp导出,导入dmp数据库文件

一,oracle数据库导出工具 exp:

1 它是一个可执行的文件 存放目录/ORACLE_HOME/bin

exp导出工具将数据库中数据备份压缩成一个二进制系统文件 它有三种模式:

a 用户模式:导出用户所有对象以及对象中的数据;

b 表模式: 导出用户所有表或者指定的表;

c 整个数据库: 导出数据库中所有对象。

2 导出工具exp交互式命令行方式的使用的例子

$exp test/test123@appd

Enter array fetch buffer size: 4096 > 回车

Export file: expdatdmp > mdmp 生成导出的文件名

(1)E(ntire database), (2)U(sers), or (3)T(ables): (2)U > 3

Export table data (yes/no): yes > 回车wQeLin

Compress extents (yes/no): yes > 回车

Export done in ZHS16GBK character set and ZHS16GBK NCHAR character set

About to export specified tables via Conventional Path wQeLinux联盟

Table(T) or Partition(T:P) to be exported: (RETURN to quit) > cmamenu 要导出的表名

exporting table CMAMENU 4336 rows exported

Table(T) or Partition(T:P) to be exported: (RETURN to quit) >要导出的表名n

Table(T) or Partition(T:P) to be exported: (RETURN to quit) > 回车

Export terminated successfully without warnings

3 导出工具exp非交互式命令行方式的例子

1)、 将数据库TEST完全导出,用户名system 密码manager 导出到D:/daochudmp中

exp system/manager@TEST file=d:/daochudmp full=y

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

exp system/manager@TEST file=d:/daochudmp owner=(system,sys)

3) 、将数据库中的表inner_notify、notify_staff_relat导出

exp aichannel/aichannel@TESTDB2 file= d:/data/newsmgntdmp tables=(inner_notify,notify_staff_relat)

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

二,oracle数据库导入工具 imp:

1 它是 *** 作系统下一个可执行的文件 存放目录/ORACLE_HOME/bin

imp导入工具将EXP形成的二进制系统文件导入到数据库中

它有三种模式:

a 用户模式: 导出用户所有对象以及对象中的数据;

b 表模式: 导出用户所有表或者指定的表;

c 整个数据库: 导出数据库中所有对象。

2导入工具imp交互式命令行方式的例子

$ imp

Import: Release 81600 - Production on 星期五 12月 7 17:01:08 2001

(c) Copyright 1999 Oracle Corporation All rights reserved

用户名: test

口令:

连接到: Oracle8i Enterprise Edition Release 81600 - 64bit Production

With the Partitioning option

JServer Release 81600 - Production

导入文件: expdatdmp> /tmp/mdmp

输入插入缓冲区大小(最小为 8192 ) 30720>

经由常规路径导出由EXPORT:V080106创建的文件

警告: 此对象由 TEST 导出, 而不是当前用户

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

只列出导入文件的内容(yes/no):no>

由于对象已存在, 忽略创建错误(yes/no):no> yes

导入权限(yes/no):yes>

导入表数据(yes/no):yes>

导入整个导出文件(yes/no):no> yes

正在将TEST的对象导入到 SCOTT

正在导入表 "CMAMENU" 4336行被导入

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

Oracle数据库导入时遭遇IMP-00085,原来是FULL/Y对决

Oracle数据库导入时遭遇IMP-00085,原来是FULL/Y与 FROMUSER/TOUSER对决

问题:帮忙数据库从一个环境迁移到另一个环境

导出:exp username/password@OracleID File=Oracledmp,正确导出,拿到别的地方去导入

导入:imp username/password@OracleID File=Oracledmp FULL/Y 时报

IMP-00085:指定的多个输入文件为无界导出文件 IMP-00000:为成功终止导入

*** 作步骤及问题有

1、imp username/password@OracleID File=Oracledmp

数据库的用户username居然设置为了DBA权限,晕倒。因此在导入到对应的数据库时也需要授予DBA权限,如果没有授予DBA权限则会报错

IMP-00013: 只有 DBA 才能导入由其它 DBA 导出的文件

IMP-00000: 未成功终止导入

2、imp username/password@OracleID File=Oracledmp

在目标数据库将要导入的用户也授予DBA权限后,则报告错误

IMP-00031: 必须指定 FULL=Y 或提供 FROMUSER/TOUSER 或 TABLES 参数IMP-00000: 未成功终止导入

3、imp username/password@OracleID File=Oracledmp FULL/Y

导入时加上FULL/Y参数

IMP-00085: 指定的多个输入文件为无界导出文件IMP-00000: 未成功终止导入

4、imp username/password@OracleID File=Oracledmp FromUser=username ToUser=username

根据2的提示,将 ULL/Y参数 换成 FROMUSER/TOUSER 的方式后,可以正确导入

总结:

1、如果没有其它需要,普通用户没有必要授予为DBA权限

2、导入导出时还真的得注意提示信息,呵呵:)

要导入到数据库,肯定前提条件是你有登录这个数据库的权限啊。

非要在命令里写上ip么?

在oracle路径下的tnsnamesora文件里配置的不就是数据库的连接串么,上边不就有ip地址。

在使用imp时,直接使用数据库的连接串就是了。

以上就是关于如何在Oracle中使用exp和imp导出,导入dmp数据库文件全部的内容,包括:如何在Oracle中使用exp和imp导出,导入dmp数据库文件、oracle数据库imp导入失败,错误imp-00085、oracle数据库用imp命令导入数据库时报1659的错误,怎么解决等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10096536.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存