Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2101386
  • 博文数量: 195
  • 博客积分: 4378
  • 博客等级: 上校
  • 技术积分: 4046
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-09 11:37
个人简介

白天和黑夜只交替没交换无法想像对方的世界

文章分类

全部博文(195)

文章存档

2014年(3)

2013年(20)

2012年(18)

2011年(107)

2010年(17)

2009年(5)

2008年(20)

2007年(5)

分类: Oracle

2011-10-10 22:03:02

Oracle exp/imp,备份或导入时注意的事项:
本篇主要讲述的是Oracle exp/imp备份导入的实际操作中需要注意的事项的介绍,凡事都不是完美的。不论哪种计算机语言,不论它的实际操作技巧是如何灵活,都是避免不掉它的缺陷之处,当然在Oracle exp /imp备份导入时。我们也需要注意一些在实际操作中经常发生的事项。
 
Oracle exp/imp备份导入注意事项:
 
(1) 数据库对象已经存在
 
一般情况, 导入数据前应该彻底删除目标数据下的表, 序列, 函数/过程,触发器等;数据库对象已经存在, 按缺省的imp参数, 则会导入失败如果用了参数ignore=y,
会把Oracle exp文件内的数据内容导入如果表有唯一关键字的约束条件, 不合条件将不被导入如果表没有唯一关键字的约束条件, 将引起记录重复。
 
(2) 数据库对象有主外键约束
 
不符合主外键约束时, 数据会导入失败;解决办法: 先导入主表, 再导入依存表,disable目标导入对象的主外键约束, 导入数据后, 再enable它们。
 
(3) 权限不够
 
如果要把A用户的数据导入B用户下, A用户需要有imp_full_database权限。
 
(4) 导入大表( 大于80M ) 时, 存储分配失败
 
默认的EXP时, compress = Y, 也就是把所有的数据压缩在一个数据块上.导入时, 如果不存在连续一个大数据块, 则会导入失败.导出80M以上的大表时, 记得compress= N, 则不会引起这种错误.
 
(5) imp和exp使用的字符集不同
 
如果字符集不同, 导入会失败, 可以改变unix环境变量或者NT注册表里NLS_LANG相关信息.导入完成后再改回来.
 
(6) imp和exp版本不能向上兼容
 
imp可以成功导入低版本exp生成的文件, 不能导入高版本Oracle exp生成的文件。
 
 
Example:普通数据库全部导出和导入:
 
exp 用户/密码@dbName file=路径.dmp full=y              --还有其他的参数,看需要进行填写
$ exp user/pwd file=/dir/xxx.dmp log=xxx.log full=y commit=y ignore=y       --全部导出
$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2 --全部导入
 
以上就是对Oracle exp/imp备份导入注意事项相关的内容的介绍。
 
==========================================
阅读(6840) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~