设为首页 收藏本站
查看: 479|回复: 0

[经验分享] Oracle import命令使用浅解

[复制链接]

尚未签到

发表于 2016-7-27 11:19:31 | 显示全部楼层 |阅读模式
在上一篇
oracle export
命令使用浅解


的文章中介绍了
oracle

exp
命令用来导出数据,导出的二进制文件如何使用,怎样才能导入到数据库中呢?答案就是通过
oracle

imp
命令。


该命令的很多参数和上一篇中介绍的
exp
是相对应的,所以两篇可以对比着来看。


1.      



认识
imp

命令



Imp
命令可以通过输入各种参数来控制导出的运行方式,执行参数时格式如下:


IMP KEYWORD=value


KEYWORD=(value1,value2,...,valueN)
,例如
IMP SCOTT/TIGER
IGNORE=Y TABLES=(EMP,DEPT) FULL=N
。要想查看
imp
支持的所有参数,可以通过执行


Imp help=y
来查看参数的详细情况。虽说是详细情况,但是等你查看了就知道了,其实一点都不详细,要不然我也就没必要再写这边笔记博文了。


2.      



参数详解



USERID



用户名/
口令。该参数在imp
命令中位置必须是第一个,
用户名
/
口令。格式为

用户名
/
密码
@
待连接的数据库。具体参考第三节中示例。


 


BUFFER



数据缓冲区大小。定义了插入数据的缓冲区的大小,单位是byte,
该值越大, Import
进程执行插入次数就越少,从而提高导入效率。BUFFER
的大小取决于系统应用、数据库规模,通常来说,设为百兆就足够了。


 


FROMUSER



所有者用户名列表。待导入的二进制文件的中的shcema
信息,如果导出的文件包含多个用户,那么该参数设定时为多个用户的子集,或者全集。如果指定了文件包含用户中的一部分,则本次导入操作只会导入已经指定的部分用户的数据。


 


TOUSER:

用户名列表。与FROMUSER
对应的参数,指定导入的目标用户列表。因为这个参数的存在,可以使我们轻松的把一个用户下的数据导入到另一个用户下,只需执行一个相应的touser
就可以了。前提是该用户确实存在。


 


FILE



输入文件。待导入的二进制文件,如果不指定的话,默认采用EXPDAT.DMP
。如果导出时设定了最大转储文件大小的话,我们得到的可能是多个文件,这时候可以指定多个文件名,如:FILE=
(file1.dmp,file2.dmp
……)。


 


TABLES



表名列表。指定要导入的表名。可以是多个表名,多个表名时采用如下格式:tables=(test_tab_1,test_tab_2)
。如果是在linux
或者unix
下的话,括号需要进行转义。如:tables=\(test_tab_1,test_tab_2\)



 


IGNORE



忽略创建错误。默认为N
,及不会忽略创建时的错误。比如在导入一个表时,目标表已经存在,那样就会导入失败,并提示错误。如果我们将IGNORE=Y
,这样就不会出现该错误了,但是你就得做好表被追加数据的心理准备了。即使重复了,也不会报错,会直接导入到表中。


 


RECORDLENGTH:

IO
记录的长度。指定文件的byte
长度。


 


INDEXES:

是否导入索引。


 


COMMIT



提交数组插入。默认值是N
,表示导完一张表之后进行提交。如果设置为Y
,则每次缓冲区满了之后就进行提交一次。这样可以减少占用的回滚段大小。建议设置为Y.



 


ROWS:

导入数据行。默认为Y
,即导入表中的记录。设置为N
的话,则只会导入表结构。


 


LOG



屏幕输出的日志文件。


 


CONSTRAINTS:

是否导入文件中包含的表的constraint
内容。


 


GRANTS



是否导入权限。


 


STATISTICS:


统计信息。统计导入过程的相关信息,可选项包括
ALWAYS

NONE

SAFE

RECALCULATE



 


以上只是列举了imp
的基本常用参数。要午休了,就写这些吧,基本也就够了。


 


3.



举例



下面是一个导入命令的示例,可以参考一下。如下:



imp scott/scottpwd@mydb file=/data/test.dmp.tmp buffer=100000 fromuser=user1 touser=user1 commit=Y tables=\(etl_test_0,etl_test_1\)  ignore=Y indexes=N rows=Y grants=Y  constraints=Y log=/data/imp.log

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-250230-1-1.html 上篇帖子: Oracle中单行函数的分类 下篇帖子: ODBC访问Oracle实例(附代码)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表