搜索内容

您当前的位置:首页 > IT资讯 > 正文

oracledmp导入(oracle中导入dmp)

IT资讯
日期·2024-10-10 09:08

oracle sqldloper大数据量如何导入导出

上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。

方法一:利用PL/SQL Dloper工具导出:

oracledmp导入(oracle中导入dmp)oracledmp导入(oracle中导入dmp)


在安装目录里的比如:

菜单栏---->Tools---->Export Tables

方法二:利用cmd的作命令导出,详情如下:

1:G:\Oracle\product\10.1.0\_1\NETWORK\目录下有个tnsname.ora文件,内容如下:

CMSTAR =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = TCP)(HOST = 172.18.13.200)(PORT = 1521))

(SERVICE_NAME = cmstar)

))其中:CMSTAR为数据库名,HOST为IP地址,所以可以仿效上面的例子手动添加数据录连接。

2:用cmd进入命令行

就是测试172.18.13.200是否连接成功

3:导入与导出,如下:

数据导出:

1 将数据库TEST完全导出,用户名 密码mar

导出到D:\daochu.dmp中

exp /mar@TEST file=d:\daochu.dmp

full=y

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

exp/mar@TESTfile=d:\daochu.dmpowner=(,sys)

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

exp/mar@TESTfile=d:\daochu.dmptables=(table1,table2)

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

不过在上面命令后面加上compress=y就可以了

数据的导入

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

imp/mar@TESTfile=d:\daochu.dmp

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

imp/mar@TESTfile=d:\daochu.dmptables=(table1)

注意事项:导出dmp数据时需要有导出表的权限的用户,否则不能导出。

PL/SQL Dloper是Oracle数据库中用于导入或导出数据库的主要工具,本文主要介绍了利用PL/SQL

Dloper导入和导出数据库的过程,并对导入或导出时的一些注意事项进行了说明,接下来我们就一一介绍。

1 tools ->export user object 1 将D:\daochu.dmp 中的数据导入 TEST数据库中。选择选项,导出.sql文件。

2 tools ->export tables-> Oracle Export 选择选项导出.dmp文件。

导入步骤:

1 tools->import tables->SQL Inserts

导入.sql文件。

2 tools->import talbes->Oracle Import然后再导入dmp文件。

一些说明:

Tools->Export User Objects导出的是建表语句(包括存储结构)。

Tools->Export

Tables里面包含三种导出方式,三种方式都能导出表结构以及数据,如下:

Oracle Export

Sql Insert

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

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

table contains one or more LONG columns cannot export in sql format,user Pl/sql

dloper format instead)。

第三种是导出为.pde格式的,.pde为Pl/sql

dloper自有的文件格式,只能用Pl/sql dloper自己导入导出,不能用编辑器查看。

linux oracle 怎么导入.dmp文件

连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production

对于本机安装了oracle 客户端,下述命令都可以在 dos 执行,当然 dmp 文件导出在本地。

但在实际研发时,没人愿意在本机上安装庞大的 oracle 软件,这时你需要使用 Xshell/puTTY..

远程工具连接到 Linux 进行作例如:imp命令导入数据:,进行 Linux 上 dmp 文件的导入导出。

exp /password@SID file=d:/daochu.dmp full=y

b. 将用户 与 sys 用户的表导出到指定路径 D 盘

c. 将用户 中的表 table_A、table_B 导出到指定路径 D 盘

exp /password@SID file= d:/daochu.dmp tables=(table_A,table_B)

d. 将用户 中的表 table1 中的字段 filed1 以"00"打头的数据导出

exp /passwor@SID filed=d:/daochu.dmp tables=(table1) query=/" where filed1 like '00%'/"

对于压缩可以用 winzip 将 dmp 文件进行压缩,也可以在上面命令后面 加上 compress=y 来实现。

导出 DMpl/sqlP文件适用于大型数据库完整迁移,对迁移前后两者数据库字符集要求一致,且对CLOB字段支持不太友好。

对于小数据的导出其实用 PLSQL 能做的更好,更快,导出的SQL也很直观。

e. 将 D:/daochu.dmp 中的数据导入 TEST 数据库中。

imp /password@SID file=d:/daochu.dmp

上面命令如果出现问题,假设有的表已存在,对该表可以不进行导入,后面添加 ignore=y。

f. 将 d:/daochu.dmp中的表table1 导入

imp /passord@SID file=d:/daochu.dmp tables=(table1)

如何在oracle中导入dmp数据库文件

exp/mar@TESTfile=d:\daochu.dmptables=(table1)query=\"wherefiled1like'00%'\"

Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库导出到本地的dmp文件,imp命

imp /mar@TEST file=d:\daochu.dmp执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,

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

oracle用ja编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。

SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。

数据导出:

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

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

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

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

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

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

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

数据的导入

imp 已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入/mar@TEST file=d:\daochu.dmp

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

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

注意:

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

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

附录一:

,启动sqlpuls

第二,以/mar登陆

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

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

DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,

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

imp userid=/mar full=y file=.dmp

或者 imp userid=/mar 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.

With the Partitioning option

J Release 8.1.7.0.0 - Production

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

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

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

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

准备启用约束条件...

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

附录二:

Oracle 不允许直接改变表的拥有者, 利用Export/Import可以达到这一目的.

先建立import9.par,

然后,使用时命令如下:imp parfile=/filepath/import9.par

例 import9.par 内容如下:

FROMUSER=TGPMS

TOUSER=TGPMS2 (注:把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER的用户可以不同)

ROWS=Y

INDEXES=Y

GRANTS=Y

CONSTRAINTS=Y

BUFFER=409600

file==/backup/ctgpc_20030623.dmp

log==/backup/import_20030623.log

在oracle中怎么导入dmp文件

开始---运行---cmd(打开DOS)---imp /orcl fromuser="原表名用户" touser='现表注:导入之前把以前的表删除,当然导入另外数据库除外。名用户' file="dmp文件路径" ---通过现表名用户身份进入数据库---select from tab;可以查看到所有的表名---select from 表名;可以查看表中所有信息

Oracle中导入dmp文件导出步骤:的步骤如下:

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

注意:作者要有足够的权限,权限不够它会提示。数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。

怎么查看oracle中的.dmp内容

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

首先导入DMP数据表

dlopea. 将用户 用户表导出到指定路径 D 盘r

需要用到一些工具:例如toad:database export browser 。

导入可执行文件 oracle导入imp exe pl sql ,这个文件在哪?

params.dat 内容

一、在安装目录里,比如:

(5) imp和exp使用的字符集不同

1、导入imp:F:\app\Administrator\product\11.1.0\db_1\BIN\imp.exe;

2、导出exp:F:\app\Administrator\product\11.1.0\db_1\BIN\exp.exe;

3、sql插入:F:\app\Administrator\product\11.1.0\db_1\BIN\sqlplus.exe;

二、需要注意的是2 将d:\daochu.dmp中的表table1 导入::

plsql的导出功能要调用Oracle客户端中的exp.exe文件,需要安装完整的Oracle客户端。

扩展资料

1、使用PLSQL导入导出,都是在工具下面,导入导出,需要注意的是用到oracle的可执行文件

E:\app\Administrator\product\11.1.0\db_1\BIN\exp.exe;

2、如果导出的时候出现了闪动一下,但是没有导出来的情况,是因为没有配置环境变量

配置环境变量ORACLE_HOME=D:\app\product\11.2.0\dbhome_1;

3、导出的时候如果出现exp-00011的错误,原因是该表中没有数据;

4、导入dmp文件的时候报错,其中一个可能的原因是权限,如果导出的时候是dba权限,现在用的另外一个账户登录,权限不够也会出现报错,此时需要给当前用户赋予dba权限。

与你Oralce客户端安装位置有关,我的是:

d:\oracle\product\10.2.0\db_1\bin\imp.exe

导入imp:

F:\app\Administrator\product\11.1.0\db_1\BIN\imp.exe

导出exp:

F:\app\Administrator\product\11.1.0\db_1\BIN\exp.exe

sql插入:

F:\app\Administrator\product\11.1.0\db_1\BIN\sqlplus.exe

oracle数据库导入dmp数据怎么导

$ imp sc连接到: Oracle8i Enterprise Edition Release 8.1.6.0.0 - 64bit Productionott/tiger file = expdat.dmp full=y

Oracle中导入dmp文件的步骤如下:

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

imp aichannel/aichannel@HUST full=y file=file= d:\data

2 将d:\daochu.dmp中的表table1 导入:imp /mar@TEST file=d:\daochu.dmp tables=(table1) 基本上上面的导入导出够用了。不少情况要先是将表删除,然后导入。注意:作者要有足够的权限,权限不够它会提示。数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。

oracle数据库如何将大量数据(.dmp)导入的问题

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

imp /用户的密码@SID号 fromuser=导出数据文件的用户名 tou$ imp /mar parfile=params.datser=需要导入的数据库用户 file=文件完整路径(此处支持拖放) log=导入日志文件路径

这个是在命令提示符下面的导入命令

或者使用PL/SQL dloper工具imp /mar@TEST file=d:\daochu.dmp tables=(table1)中的导入表(import table),选择oracle导入(oracle import),在下面哪里选择数据库文件点导入即可。

使用imp或impdp

如何在oracle中导入dmp数据库文件

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

--如何在oracle中导入dmp数据库文件?

(1) 数据库对象已经存在

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

执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行, DOS中可以执行时由于 在oracle 8i 中 安装目录\ora81\BIN被设置为全局路径, 该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。

oracle用ja编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。

SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。

数据导出:

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

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

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

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

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

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

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

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

数据的导入

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

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

补充:ignore=y 会告诉数据库不用创建已有的表。

如果已有的表中有数据,要导入的表中的数据和已有的表中的数据有重复的话,会发生主键冲突。

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

注意:

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

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

一. 导出工具 exp

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

exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移

它有三种模式:

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

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

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

$exp test/test123@appdb

Enter array fetch buffer size: 4096 > 回车

Export file: expdat.dmp > m.dmp 生成导出的文件名

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

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

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

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非交互式命令行方式的例子

$exp scott/tiger tables=(emp,dept) file=/directory/scott.dmp grants=y

说明:把scott用户里两个表emp,dept导出到文件/directory/scott.dmp

说明:在exp里面加上导出emp的查询条件job='salean' and sal<1600

(但我个人很少这样用,还是把满足条件的记录生成临时表后,再exp会方便一些)

$exp parfile=username.par file=/directory1/username_1.dmp,/directory1/username_2.dmp filesize=2000M log=/directory2/username_exp.log

参数文件username.par内容

userid=username/userpassword

buffer=8192000

compress=n

grants=y

说明:username.par为导出工具exp用的参数文件,里面具体参数可以根据需要去修改

filesize指定生成的二进制备份文件的字节数

(可用来解决某些OS下2G物理文件的限制及加快压缩速度和方便刻历史数据光盘等)

二.导入工具 imp

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

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

它有三种模式:

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

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

只有拥有IMP_FULL_DATABASE和DBA权限的用户才能做整个数据库导入

imp步骤:

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

$ imp

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

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

用户名: test

口令:

With the Partitioning option

J Release 8.1.6.0.0 - Production

导入文件: expdat.dmp> /tmp/m.dmp

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

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

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

只列出导入文件的内容(yes/na. 用户模式: 导出用户所有对象以及对象中的数据;o):no>

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

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

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

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

. 正在将TEST的对象导入到 SCOTT

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

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

3.导入工具imp非交互式命令行方式的例子

$ imp /mar fromuser=jones tables=(accts)

$ imp /mar fromuser=scott tables=(emp,dept)

$ imp scott/tiger file = /mnt1/t1.dmp show=n buffer=2048000 ignore=n commit=y grants=y full=y log=/oracle_backup/log/imp_scott.log

file=dba.dmp show=n ignore=n grants=y fromuser=scott tables=(dept,emp)

4.导入工具imp可能出现的问题

一般情况, 导入数据前应该删除目标数据下的表, 序列, 函数/过程,触发器等;

数据库对象已经存在, 按缺省的imp参数, 则会导入失败

如果用了参数ignore=y, 会把exp文件内的数据内容导入

如果表有关键字的约束条件, 不合条件将不被导入

如果表没有关键字的约束条件, 将引起记录重复

(2) 数据库对象有主外键约束

不符合主外键约束时, 数据会导入失败

disable目标导入对象的主外键约束, 导入数据后, 再enable它们

(3) 权限不够

如果要把A用户的数据导入B用户下, A用户需要有imp_full_database权限

(4) 导入大表( 大于80M ) 时, 存储分配失败

导入时, 如果不存在连续一个大数据块, 则会导入失败.

导出80M以上的大表时, 记得compress= N, 则不会引起这种错误.

如果字符集不同, 导入会失败, 可以改变unix环境变量或者NT注册表里NLS_LANG相关信息.

导入完成后再改回来.

(6) imp和exp版本不能往上兼容

imp可以成功导入低版本exp生成的文件, 不能导入高版本exp生成的文件

根据情况我们可以用

$ imp username/password@connect_string

说明: connect_string 是在/ORACLE_HOME/network/admin/tnsnames.ora

定义的本地或者远端数据库的名称

注意事项:

UNIX: /etc/hosts 要定义本地或者远端数据库的主机名

win98: windows\hosts 和IP地址的对应关系

win2000: winnt\32\drivers\etc\hosts

版权声明:图片、内容均来源于互联网 如有侵权联系k19126499204@163.com 删除