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

如何在oracle中导入dmp数据库文件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 密码manager 导出到D:\daochu.dmp中exp system/manager@TEST file=d:\daochu.dmp full=y2 将数据库中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.dmptables=(inner_notify,notify_staff_relat)4 将数据库中的表table1中的字段filed1以"00"打头的数据导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\" 上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。

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

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

imp system/manager@TEST file=d:\daochu.dmpimp 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能否连上。

附录一:给用户增加导入数据权限的操作第一,启动sql*puls第二,以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(c) Copyright 2000 Oracle Corporation. All rights reserved.连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - ProductionWith the Partitioning optionJServer Release 8.1.7.0.0 - Production经由常规路径导出由EXPORT:V08.01.07创建的文件已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入导出服务器使用UTF8 NCHAR 字符集(可能的ncharset转换). 正在将AICHANNEL的对象导入到AICHANNEL. . 正在导入表"INNER_NOTIFY" 4行被导入准备启用约束条件...成功终止导入,但出现警告。

附录二:Oracle 不允许直接改变表的拥有者, 利用Export/Import可以达到这一目的.先建立import9.par,然后,使用时命令如下:imp parfile=/filepath/import9.par例import9.par 内容如下:FROMUSER=TGPMSTOUSER=TGPMS2(注:把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER 的用户可以不同)ROWS=YINDEXES=YGRANTS=YCONSTRAINTS=YBUFFER=409600file==/backup/ctgpc_20030623.dmplog==/backup/import_20030623.logexp和imp用法和介绍1、Export/Import的用处Oracle Export/Import工具用于在数据库之间传递数据。

Export从数据库中导出数据到dump文件中Import从dump文件中到入数据导数据库中下面是一般使用他们的情况(1)、两个数据库之间传送数据同一个版本的oracle Server之间不同版本的oracle Server之间同种OS之间不同种OS之间(2)、用于数据库的备份和恢复(3)、从一个SCHEMA传送到另一个SCHEMA(4)、从一个TABLESPACE传送到另一个TABLESPACE2、DUMP文件EXPORT到出的是二进制格式的文件,不可以手工编辑,否则会损坏数据。

该文件在ORACLE支持的任何平台上都是一样的格式,可以在各平台上通用。

DUMP文件在IMPORT时采用向上兼容方式,就是说ORALCE7的DUMP文件可以导入到ORACLE8中,但是版本相差很大的版本之间可能有问题。

3、EXPORT/IMPORT过程EXPORT导出的DUMP文件包含两种基本类型的数据- DDL (Data Dictionary Language)- DataDUMP文件包含所有重新创建Data Dictionary的DDL语句,基本上是可以读的格式。

但是应该注意的是,千万不要用文本编辑器编辑之,oracle说不支持这样做的。

下面列出的是DUMP文件中包括的ORACLE对象,分为TABLE/USER/FULL方式,有些对象只是在FULL方式下才有(比如public synonyms, users, roles, rollback segments等)Table mode User Mode Full Database Mode---------------------- ---------------------- -------------------------Table definitions Table definitions Table definitionsTable data Table data Table dataOwner's table grants Owner's grants GrantsOwner's table indexes Owner's indexes IndexesTable constraints Table constraints Table constraintsTable triggers Table triggers All triggersClusters ClustersDatabase links Database linksJob queues Job queuesRefresh groups Refresh groupsSequences SequencesSnapshots SnapshotsSnapshot logs Snapshot logsStored procedures Stored proceduresPrivate synonyms All synonymsViews ViewsProfilesReplication catalogResource costRolesRollback segmentsSystem audit optionsSystem privilegesTablespace definitionsTablespace quotasUser definitions4、IMPORT时的对象倒入顺序在倒入数据时,ORACLE有一个特定的顺序,可能随数据库版本不同而有所变化,但是现在是这样的。

1. Tablespaces 14. Snapshot Logs2. Profiles 15. Job Queues3. Users 16. Refresh Groups4. Roles 17. Cluster Definitions5. System Privilege Grants 18. Tables (also grants,comments,6. Role Grants indexes, constraints, auditing)7. Default Roles 19. Referential Integrity8. Tablespace Quotas 20. POSTTABLES actions9. Resource Costs 21. Synonyms10. Rollback Segments 22. Views11. Database Links 23. Stored Procedures12. Sequences 24. Triggers, Defaults and Auditing13. Snapshots按这个顺序主要是解决对象之间依赖关系可能产生的问题。

合集下载

Linux下Oracle导入dmp文件

Linux下Oracle导入dmp文件

Linux下向oracle数据库倒入dmp包的方式1、登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户)2、以sysdba方式来打开sqlplus,命令如下:sqlplus "/as sysdba"3、查看常规将用户表空间放置位置:执行如下sql: select name from v$datafile; 上边的sql一般就将你的用户表空间文件位置查出来了。

4、创建用户表空间:CREATE TABLESPACE 表空间名DATAFILE '/oracle/oradata/test/notifydb.dbf(表空间位置)' SIZE 200M AUTOEXTEND ON EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;5、创建用户,指定密码和上边创建的用户表空间 CREATE USER 用户名 IDENTIFIED BY 密码 DEFAULT TABLESPACE 表空间名;6、赋予权限grant connect,resource to 用户名;grant unlimited tablespace to用户名;grant create database link to用户名;grant select any sequence,create materialized view to用户名; 经过以上操作,我们就可以使用用户名/密码登录指定的实例,创建我们自己的表了续:创建临时表空间:create temporary tablespace test_temp tempfile 'F:\app\think\oradata\orcl\test_temp01.dbf' size 32m autoextend on next 32m maxsize 2048m extent management local; 创建表空间: create tablespace test_data logging datafile 'F:\app\think\oradata\orcl\test_data01.dbf' size 32mautoextend on next 32m maxsize 2048m extent management local; 创建用户:create user jack identified by jack default tablespace test_data temporary tablespace test_temp;为用户赋予权限:GRANT create any table TO jack;GRANT resource,dba TO jack;GRANT select any table TO jack;第一个是授予所有table有create权限,第二个就是赋予DBA的权限,这才是最重要的,其实只要第二就可以了.第三是授予所有table有select权限.四:删除用户表空间的步骤:Alter tablespace 表空间名称 offline;Drop tablespace 表空间名称;(表空间无有数据时用) 或者 drop tablespace 表空间名称 including contents;(表空间下有数据时候用temporary tablespace是oracle里临时表空间,临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。

oracle 创建用户 及dmp文件导入

oracle 创建用户 及dmp文件导入

连接sha用户connect sha/admin可以创建别的用户5、查看用户权限进入sha用户connect sha/adminSelect * from user_sys_privs;可以查看到一个列表,列代表用户名权限是否可以给别的用户附加权限(N 、Y)行代表权限都有那些6、撤销用户授予的权限必须连接connect system/admin撤销权限revoke是系统撤销权限的关键词Revoke execute any procedure from sha;7、更改用户密码进入sha用户connect sha/adminPassword 输入旧密码输入新密码俩边OK或者用alter user sha identified by xinmima8、删除用户Connect system/adminDrop user sha;9、为用户授予角色Grant dba to sha;Grant connect to sha;Linux下的plsql 创建用户create user sha identified by adminDefault tablespace userTemporary tablespace temp;Granr unlimited tablespace to sha;//权限Grant dba to sha;//角色Grant connect to sha;准备工作(导出dmp文件)1.使用PL/SQL 工具--》导出用户对象,导出用户所有表,视图,存储过程等的定义2.使用PL/SQL 工具--> 导出表,导出所有表的数据这就是那个dmp文件保存好导出的sql脚本和dmp文件准备导入好了,开始导入1.删除用户drop user test cascade;2.删除全部表空间drop tablespace testdb INCLUDING CONTENTS;drop tablespace testdb_index INCLUDING CONTENTS;drop tablespace testdb_temp INCLUDING CONTENTS;3.重新创建表空间和用户并给用户授权CREATE TABLESPACE "DB_QQTB"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB01.ora' SIZE 2000M,'D:\oracle\OraData\DB_QQTB02.ora' SIZE 2000M, 'D:\oracle\OraData\DB_QQTB03.ora' SIZE 2000M EXTENT MANAGEMENT LOCALSEGMENT SPACE MANAGEMENT AUTO/CREATE TABLESPACE "DB_QQTB_INDEX"LOGGINGDATAFILE 'D:\oracle\OraData\DB_QQTB_INDEX.ora' SIZE 500M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO/CREATETEMPORARY TABLESPACE "DB_QQTB_TEMP" TEMPFILE'D:\oracle\OraData\DB_QQTB_TEMP.ora' SIZE 200M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M/create user FZCXidentified by "FZCX"default tablespace DB_QQTBtemporary tablespace DB_QQTB_TEMPprofile DEFAULTquota unlimited on DB_QQTB。

Oracle导入导出.sql、.dmp文件

Oracle导入导出.sql、.dmp文件

Oracle导⼊导出.sql、.dmp⽂件Oracle导出导⼊表(.sql、.dmp⽂件)两种⽅法提⽰:在导⼊sql和dmp⽂件之前,先建⽴⽤户,指明表空间。

其中要注意⽤户名和表空间最好跟sql⽂件中的⼀样。

⽅法⼀:.sql⽂件的导出与导⼊导出步骤1. 使⽤PL/SQL Developer登录你需要备份的数据库;2. 选择⼯具->导出⽤户对象;3. 在对象列表中选择需要备份的对象,再选择⼀个sql类型的输出⽂件,点击【导出】,这只是导出数据结构;4. 选择⼯具->导出表;5. 在列表中选择需要导出数据的表,再选择【SQL插⼊】,选择⼀个sql类型的⽂件,点击【导出】,这⼀步是把数据导出数据库。

6. 这样就得到两个sql,分别是备份数据结构和备份数据的。

导⼊步骤在plsql⼯具⾥点击File-new-command window 将两个.sql⽂件语句分别粘贴进去执⾏两次⽅法⼆:.dmp⽂件的导出与导⼊1. 导出表结构:expdp system/admincss@WSYDBSPT directory=DATA_PUMP_DIR schemas=hx_xt dumpfile=WSYDBS.dmp 注:system/admincss@WSYDBSPT管理员⽤户名密码、数据库服务名,directory=DATA_PUMP_DIR(通过select * from dba_directories查询), schemas=hx_xt从该⽤户名下导出表结构数据2. 导⼊表结构1) Impdp system/admincss@WSYDBSPT directory=DATA_PUMP_DIR schemas=hx_xt dumpfile=WSYDBS.dmp2) Impdp system/admincss@xxbspt directory=DATA_PUMP_DIR dumpfile=xxbspt20180129.dmp full=y(全导)。

oracle导入导出dmp文件的流程

oracle导入导出dmp文件的流程

oracle导⼊导出dmp⽂件的流程医保局说需要把表的dmp⽂件发给他们我的操作:把需要的数据放到表⾥⾯,然后⽤plsql⾥⾯的⼯具-->导出数据-->然后导出dmp后缀的⽂件然后医保导⼊该⽂件提⽰: IMP-00037:未知字符集标记然后我⾃⼰核对这⼀过程的操作是:把这些表及其数据复制到其他表信息⾥,然后导出dmp⽂件,然后delete表数据,然后执⾏导⼊dmp是可以,提⽰成功医保局的操作是直接执⾏导⼊dmp,他们并没有执⾏create表的语句,然后导⼊dmp所以不成plsql导⼊.sql和.dmp⽂件时,会经常⽤到,对于初学者来说可能没有那么简单,毕竟oracle数据库⽐较⿇烦。

下⾯是我⾃⼰导⼊.sql和.dmp⽂件的步骤。

1.导⼊.sql⽂件(sql⽂件是表结构⽂件,不包含数据)⼯具->导⼊表2.->sql插⼊关于可执⾏⽂件,该⽂件位置在oracle的安装位置下我的是:F:\app\Administrator\product\11.2.0\dbhome_1\BIN\sqlplus.exe3.->oracle插⼊,现在.bmp⽂件(.bmp⽂件是含有数据的储存⽂件)注意:不要勾选“显⽰”,否则导⼊表没有数据可执⾏⽂件与第⼆步的位置⼀样,我的是F:\app\Administrator\product\11.2.0\dbhome_1\BIN\imp.exe⽆论导⼊到出,都需要选择可执⾏⽂件,导出.dmp⽂件需要exp.exe可执⾏⽂件。

4.查看⽇志,可以看到导⼊.bmp⽂件成功5.查询数据,测试,成功。

总结⼀下1.导⼊.sql⽂件需要sqlplus.exe,导⼊.bpm⽂件需要imp.exe,导出.sql直接导出,导出.bmp⽂件需要exp.exe。

2.我曾试过直接导⼊.bmp⽂件,后来发现并没有数据。

3.oracle导⼊时没有勾选“显⽰”的时候,也没有数据。

原⽂:https:///yudianxiaoxiao/article/details/78231143。

dmp文件导入oracle数据库方法

dmp文件导入oracle数据库方法

DMP文件使用IMP导入ORACLE方法在审计中接到被审计单位的ORACLE数据库EXP导出的备份文件XXX.DMP文件,需要导入ORACLE数据库中进行查询。

一、准备工作1、将XXX.DMP拷贝到E:\下;2、使用超大文本查看器logvewer软件打开XXX.DMP,在文件开头中找到导出用户名,使用查找功能输入TABLESPACE查找此单词后的表空间名称。

例如:我们得到财政预算数据库ORACLE数据EXP备份文件IFMIS2012_CJ20121229.DMP文件,经查看用户名为IFMIS2012_CJ,表空间名称为L TSYSDA TA01、L TSYSDA TA02、L TSYSDA TA03、L TINXDA TA01、L TLOBDA TA01、USERS六个,USERS是系统用户表空间,在建立表空间时就不需要再建了。

二、安装ORACLE按照ORACLE 11G安装图解安装就可以了,建议安装企业版桌面模式,启动ORACLE服务,创建实例,使用统一口令。

我安装的是企业版服务器模式,创建实例ORCL,使用统一口令SQ。

三、建立表空间方法有2种,一种DOS下SQLPLUS方式,一种是ORACLE的EM方式。

建议使用EM方式建立表空间:1、启动服务:我的电脑—右键—管理—服务—ORACLE3个服务启动;2、启动EM:开始--程序-- ORACLE-oradb11g_home1-- Database Control - orcl;3、登陆:用户名:sys 口令:SQ(安装时统一口令)连接身份:SYSDBA;4、创建空间表:选‘服务器’—‘表空间’—‘创建’—‘表空间名称’—‘添加物理数据库名称’—‘可扩展,无限制’--‘确定’。

如有其他表空间可以继续—‘创建’~~~‘确定’的程序。

例如:将上述事例的5个表空间逐一创建。

注意:表空间大小的选择要合适,必须要选择可扩展。

四、建立用户并授权建议在DOS下SQLPLUS方式下进行:1、开始—附件—dos提示符;2、输入:CD\ 回车3、以DBA身份登陆超级用户:c:\>SQLPLUS SYS/SQ ASSYSDBA回车4、建立用户(以事例为内容建立):sql>CREA TE USERifmis2012_cj IDENTIFIED BY sq; (ifmis2012_cj用户名,sq 口令)。

Oracle各版本之间Dmp文件的导入导出问题

Oracle各版本之间Dmp文件的导入导出问题

Oracle各版本之间Dmp⽂件的导⼊导出问题
经常做整个数据迁移时遇到下列问题:
1、不是有效的导出⽂件,头部验证失败;
2、EXP-00056: 遇到 ORACLE 错误 6550
ORA-06550: line 1, column 41:
PLS-00302: component 'SET_NO_OUTLINES' must be declared
ORA-06550: line 1, column 15:
PL/SQL: Statement ignored
EXP-00000: 导出终⽌失败
关于导⼊导出问题:
1、在执⾏导出时客户端exp命令和服务器端Oracle版本要⼀致;
2、Oracle10G以上使⽤expdp、impdp
⾼版本导出dmp导⼊低版本Oralce时经常遇到“不是有效的导出⽂件,头部验证失败”这种类似错误,可以通过⼯具进⾏dmp⽂件的修改。

详细见:
导出错误:
在执⾏exp导出命令是经常遇到类似”EXP-00056: 遇到 ORACLE 错误 6550“这种错误,这⼀般是执⾏命令的客户端Oralce版本与服务器不符时,可以换个客户端解决。

oracle数据库备份(导入导出dmp)

(c) Copyright 2000 Oracle Corporation. All rights reserved.
连接到: Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
With the Partitioning option
基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。
注意:
操作者要有足够的权限,权限不够它会提示。
数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。
附录一:
给用户增加导入数据权限的操作
第一,启动sql*puls
第二,以system/manager登陆
JServer Release 8.1.7.0.0 - Production
经由常规路径导出由EXPORT:V08.01.07创建的文件
已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入
导出服务器使用UTF8 NCHAR 字符集 (可能的ncharset转换)
. 正在将AICHANNEL的对象导入到 AICHANNEL
远程
exp scott/tiger@192.168.0.1:1521/kims file=e:\dc.dmp
导入:
imp aichannel/aichannel@HUST full=y file=d:\data\newsmgnt.dmp ignore=y
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。

oracle用imp导入dmp文件的方法

oracle⽤imp导⼊dmp⽂件的⽅法
oracle命令⾏登录
sqlplus ⽤户名/密码
创建⽤户
create user ⽤户 identified by 密码 ;
创建表空间
create tablespace 表空间名 datafile 'D:\oracle11\oradata\库名\XXX.pdf' size 200M autoextend on next 50m maxsize 1000m ;
⽤户授权
grant connect ,resource to ⽤户名 ;
⽤创建的⽤户名和密码登录oracle数据库
conn ⽤户名/密码
最该权限授权
⽤最⾼权限账号登录
grant dba to ⽤户名
imp导⼊dmp
该命令需要在cmd的dos命令窗⼝直接执⾏,⽽不是sqlplus.exe
full=y 是导⼊⽂件中全部内容
ignore=y相当于,如果没有的表,创建并倒⼊数据,如果已经有的表,忽略创建的,但不忽略倒⼊
imp ⽤户/密码 file=⽂件路径 full=y ignore=y;
总结
以上所述是⼩编给⼤家介绍的oracle⽤imp导⼊dmp⽂件的⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。

在此也⾮常感谢⼤家对⽹站的⽀持!
如果你觉得本⽂对你有帮助,欢迎转载,烦请注明出处,谢谢!。

oracle dmp sqlfile用法

oracle dmp sqlfile用法Oracle的.dmp文件和.sql文件是两种不同类型的文件,用于不同的目的。

1..dmp文件:o.dmp文件是Oracle数据库的数据泵(Data Pump)工具生成的文件。

数据泵是Oracle提供的一个用于高效移动数据和元数据的工具。

o你可以使用expdp命令导出数据到.dmp文件,使用impdp命令从.dmp文件导入数据。

o示例:▪导出:expdp username/password@db_name schemas=schema_name directory=dir_name dumpfile=dump_name.dmp logfile=log_name.log▪导入:impdp username/password@db_name schemas=schema_name directory=dir_name dumpfile=dump_name.dmp logfile=log_name.logo注意:在使用这些命令之前,你需要确保在数据库中已经设置了适当的目录对象,并且该对象指向了一个在操作系统中真实存在的目录。

2..sql文件:o.sql文件通常包含SQL语句,可以用于创建表、视图、索引、触发器等数据库对象,也可以用于插入、更新、删除数据。

o你可以使用SQL*Plus、SQL Developer、PL/SQL Developer等工具执行.sql文件中的SQL语句。

o示例:▪在SQL*Plus中执行:sqlplus username/password@db_name @path_to_sql_file.sql▪在SQL Developer或PL/SQL Developer中,你通常可以打开一个.sql 文件,然后点击执行按钮来运行文件中的SQL语句。

请注意,.dmp文件和.sql文件通常不用于同一目的。

.dmp文件主要用于备份和恢复整个数据库或数据库的一部分,而.sql文件主要用于执行特定的SQL语句。

linux下oracle数据dmp导入

1.2用imp 工具进行数据库备份及恢复导入模式可以分为full(全文件导入),owner(用户导入),table(表导入).full(全文件导入):指导入文件中的所有数据,并不是指全库导入,如果文件中只存在一个表的数据全文件,导入就只能导入一个表的数据.fromuser,touser( 用户导入):指导入文件中该用户的所有数据,如果文件中只存在一个表的数据,用户导入就只能导入一个表的数据.tables( 表导入):指导入文件中该表的数据.能够导入何数据很大程度上依赖于导出文件,譬如需要导入某用户的所有数据.导出文件中必须存在该用户的所有数据,即导出时必须为全库导出或用户导出.在CAMS 系统中,如果为了备份整个cams 用户的数据应该在导出时选择全库或者用户导出.说明:导入时需要注意需要事先创建需要导入的用户以及该用户的所有权限,所以在执行以下导入的用例之前,都需要先创建cams用户.创建CAMS用户的脚本见附录1.2.1 典型用法1. 交互式-用户导入[oracle@localhost script]$ impImport: Release 8.1.7.4.0 - Production on Mon Feb 9 13:59:02 2004(c) Copyright 2000 Oracle Corporation. All rights reserved.Username: cams --此处输入启动导入的用户Password: --此处输入相应的密码Connected to: Oracle8i Enterprise Edition Release 8.1.7.4.0 -ProductionJServer Release 8.1.7.4.0 - ProductionImport file: expdat.dmp > /tmp/2004020601.dmp--此处输入需要导入的文件名,如果导出数据时导出到了多个文件,则imp 会提示用户需要输入下一个需要导入的文件名.交互式导入时大多数参数都有缺省值.如果选用缺省值,直接回车即可.Enter insert buffer size (minimum is 8192) 30720>--此处需要输入buffer值,此处通常选择缺省值,直接回车.Export file created by EXPORT:V08.01.07 via conventional pathimport done in ZHS16CGB231280 character set and ZHS16CGB231280 NCHARcharacter setIMP-00046: using FILESIZE value from export file of 1073741824List contents of import file only (yes/no): no >--如果选择yes则imp 会显示出导入文件的数据,并且这些数据这不会被导入数据库中.如果事先不知道导入文件中有哪些数据,可以利用此参数查看文件内容.此处直接回车.Ignore create error due to object existence (yes/no): no > --是否忽略对象已经存在的错误,如果选择yes 则出现对象已经存在的错误时,不显示错误信息.Import grants (yes/no): yes > --是否导入授权通常选择yesImport table data (yes/no): yes > --是否导入表中数据如果选择no,则只导入表的结构通常选择yesImport entire export file (yes/no): no > --是否导入整个文件如果选择yes,则imp 导入整个文件的数据.如果选择no,则下面会提示需要导入的用户名以及表名Username: camsii --需要导入的用户名Enter table(T) or partition(T:P) names. Null list means all tables foruserEnter table(T) or partition(T:P) name or . if done: . ?需要导入的表名或表的分区名如果输入表名则只导入该用户模式下的表的数据如果输入回车或.则表示要导出该用户的所有数据此处输入.. . importing table "TBL_BILLDETAIL_SWITCH" 0 rows imported. . importing table "TBL_BLACKLIST" 0 rows imported. . importing table "TBL_CHARGE_CARD" 0 rows imported. . importing table "TBL_DISCOUNT_BY_TIME" 0 rows imported. . importing table "TBL_ERROR_CODE" 377 rows imported……About to enable constraints...Import terminated successfully with warnings.该命令从文件中导入cams 用户的所有数据如果有多个文件imp 会提示用户输入文件名2. 交互式-表导入可以利用全库导出用户导出和表导出的文件进行表导入.此例可以使用exp典型用法的例1,例2,例3,例4,例5,例8导出的文件进行导入[oracle@localhost script]$ impImport: Release 8.1.7.4.0 - Production on Mon Feb 9 15:49:36 2004(c) Copyright 2000 Oracle Corporation. All rights reserved.Username: camsPassword:Connected to: Oracle8i Enterprise Edition Release 8.1.7.4.0 -ProductionJServer Release 8.1.7.4.0 - ProductionImport file: expdat.dmp > /tmp/2004020601.dmpEnter insert buffer size (minimum is 8192) 30720>Export file created by EXPORT:V08.01.07 via conventional pathimport done in ZHS16CGB231280 character set and ZHS16CGB231280 NCHARcharacter setIMP-00046: using FILESIZE value from export file of 2147483648List contents of import file only (yes/no): no >Ignore create error due to object existence (yes/no): no >Import grants (yes/no): yes >Import table data (yes/no): yes >Import entire export file (yes/no): no >Username: camsEnter table(T) or partition(T:P) names. Null list means all tables foruserEnter table(T) or partition(T:P) name or . if done: tbl_logEnter table(T) or partition(T:P) name or . if done: tbl_user_logEnter table(T) or partition(T:P) name or . if done:--每输入一个表名后回车,imp 会提示用户输入下一个要导入的表名,如果想结束输入表名,需要输入回车或".". importing CAMS's objects into CAMS. . importing table "TBL_LOG" 10 rows imported. . importing table "T BL_USER_LOG" 0 rows importedImport terminated successfully with warnings.该命令从文件中导入cams 用户的两个表的数据如果有多个文件imp 会提示用户输入文件名3. 命令行-查看文件内容imp userid=cams/cams@cams full=y show=y file=(tmp/2004020601.dmp,/tmp/2004020602.dmp, /tmp/2004020603.dmp) log=/tmp/20040206.log该命令查看了文件中都有哪些数据,如果有多个文件imp,会提示用户输入文件名导入过程记录日志.4. 命令行-全文件导入imp userid=cams/cams@cams full=y file=(/tmp/2004020601.dmp,/tmp/2004020602.dmp, /tmp/2004020603.dmp) log=/tmp/20040206.log该命令从文件中导入全部数据,如果有多个文件imp,会提示用户输入文件名,导入过程记录日志.5. 命令行-用户导入imp userid=cams/cams@cams fromuser=cams touser=camsfile=(/tmp/2004020601.dmp, /tmp/2004020602.dmp, /tmp/2004020603.dmp)log=/tmp/20040206.log该命令从文件中导入cams用户的全部数据,导出的文件中必须要有cams,用户的数据表示将导出文件的cams 用户数据导入到数据库的cams 用户中,如果有多个文件imp,会提示用户输入文件名导入过程记录日志.6. 命令行-表导入imp userid=cams/cams@cams tables=(tbl_user, tbl_user_log)file=(/tmp/2004020601.dmp, /tmp/2004020602.dmp, /tmp/2004020603.dmp)log=/tmp/20040206.log该命令从文件中导入cams 用户的两个表的全部数据,导出的文件中必须要有cams 用户的这两个表的数据.如果有多个文件imp会提示用户输入文件名,导入过程记录日志7. 命令行-用户导入-从增量导出文件中导入imp userid=cams/cams@cams fromuser=cams touser=camsfile=/tmp/2004020601.dmp log=/tmp/20040206.log该命令从增量导出文件中导入cams 用户新增的数据,导出的文件中必须要有cams 用户的数据,如果有多个文件imp 会提示用户输入文件名,导入过程记录日志.其实导入命令和是否增量导出文件没有关系,imp 会自动判断该文件是否为增量导出文件8. 参数文件-用户导入imp parfile=cams_imp.parcams_imp.par 文件的内容为:userid=cams/cams@camsfromuser=camstouser=camsfile=(/tmp/2004020601.dmp, /tmp/2004020602.dmp, /tmp/2004020603.dmp)log=/tmp/20040206.log该命令使用了参数文件,导入文件中cams 用户的所有数据,导入过程记录日志.说明:(1) cams 用户保存了CAMS 系统的重要数据,为了不暴露cams 用户的密码可以将上面的userid 的值写为cams@cams,此时imp 会提示用户输入密码,输入的密码不会显示出来.在windows下导入全部文件在dos下输入:imp system/manager@local full=y file=d:\iex.dmp本文来自CSDN博客,转载请标明出处:/maxDreame/archive/2008/12/17/3539261.aspx。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档