这几天做开发库schema备份,出现些问题,记录一下.
一,exp时,os语言环境和数据库不同时会自动发生转换.
   如果操作系统的字符集小于数据库字符集,就可能出现乱码现象.imp时,同理,也是有可能出现乱码的.如果源库和目标库字符集是
相同的话,防止exp,imp过程出现字符转换,我们可以在exp,imp动作前,手动设置语音环境和数据库语言环境一样.如数据库语言环境

为AMERICAN_AMERICA.AL32UTF8,os是windows,使用命令set NLS_LANG=AMERICAN_AMERICA.AL32UTF8;os是linux or unix,使用命令

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8.

二,在迁移schema时,即使不迁移数据,也易发生ORA-1659错误.
   在上述错误发生后,select view,发现表的大小和源库表大小是一样的.而实际,我们只是迁移表结构,并没有迁移数据(rows=n).

查询表发现也是没有迁移数据的,但它的存储空间和源表是一样的.也就是说它迁移了存储空间.分析发现,是由于exp时,没有设置参

数compress=n所致,由于此参数默认值为y,那么它会在exp时,将源表所有数据压缩到一个extent,也就是initial extent,而imp时,会

预分配initial extent大小的.因此此种情况下,极易发生ORA-1659错误.
   注:另在作有数据导出时,如果表大小较大的话,使用此参数的默认值也极易发生ORA-1659错误.因为假设你的源表大小为100m,在

imp时,需分配initial extent大小为100m,如果此时,用户所在表空间没有连续100m空间,那么就会报此错误了.

三,如果导出统计信息,在只导出部分数据,或不导出数据时,导出统计信息会报错.另如果未导出统计信息,但导入时,需导入统计信息

,那此时,导入后,统计信息会被锁住,而无法更新统计信息.
   此时,我们可使用包dbms_stats.unlock_schema_stats来解锁.最好的办法是,在exp,imp时,加入参数statistics=none,不exp,imp

统计信息,在导入完成后,在重新收集统计信息.

四,在使用ftp跨系统cp dmp文件时,一定要注意使用bin模式,来防止imp时,不能open文件,而导入失败.

五,在作imp数据操作时,特别是imp大表时,为了防止发生ORA-1555错误,应设置参数commit=y,buffer=10000000(根据实际情况设置),此时,当buffer空间满时,会自动提交.默认是imp一个表提交一次.

详例
迁移用户,但无需迁移数据,且源库,目标库语言环境都为AMERICAN_AMERICA.AL32UTF8,可如下操作:

导出:
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

exp user/pwd file=export.dmp log=export.log buffer=10000000 grants=n rows=n statistics=none compress=n

导入:
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

imp user/pwd fromuser=user1 touser=user2 rows=n statistics=none file=export.dmp log=export.log

出处:http://blog.163.com/card_2005/blog/static/117810368200991562719396/

Oracle中exp,imp(导入导出)数据迁移注意事项的更多相关文章

  1. oracle使用exp/imp导入导出(用户)

    实例,从远程机器上导出nxgy用户的所有对象和数据,然后导入到本机数据库的nxgy用户里(用户名可自定义) 如果本机nxgy用户已经存在(数据没用,可以删除),级联删除用户所有对象 首先,从远程机器上 ...

  2. 优化exp/imp导入导出速度大全

    .exp  个相关的参数:DIRECT和RECORDLENGTH参数. DIRECT参数定义了导出是使用直接路径方式(DIRECT=Y),还是常规路径方式(DIRECT=N).常规路径导出使用SQL ...

  3. oracle 中数据库完全导入导出:cmd命令行模式(转载)

    http://www.3lian.com/edu/2012/12-01/47252.html Oracle数据导入导出imp/exp就相当于oracle数据还原与备份.exp命令可以把数据从远程数据库 ...

  4. Oracle通过sqlplus spool导入导出数据

    第一部分(实例,主要分两步),第二部分(参数小总结),第三部分(完全参数总结) 第一部分 第一步 :这是我的导出数据的脚本call.sqlconn scott/tigerset echo offset ...

  5. oracle中exp,imp的使用详解

    http://www.cnblogs.com/yugen/archive/2010/07/25/1784763.html

  6. Oracle基础 exp/imp 数据泵导入/导出 命令

    一.导出方式: 使用exp/imp方式导出数据分为四种方式: 1.表方式导出:一个或多个指定的表,包括表的定义.表数据.表的所有者授权.表索引.表约束,以及创建在该表上的触发器.也可以只导出结构,不导 ...

  7. Oracle基础 exp/imp命令

    一.导出方式: 使用exp/imp方式导出数据分为四种方式: 1.表方式导出:一个或多个指定的表,包括表的定义.表数据.表的所有者授权.表索引.表约束,以及创建在该表上的触发器.也可以只导出结构,不导 ...

  8. Oracle exp,imp,expdp,impdp数据导入导出

    一.导出模式(三种模式)及命令格式 1. 全库模式 exp 用户名/密码@网络服务名 full=y file=路径\文件名.dmp log=路径\文件名.log 2. 用户模式(一般情况下采用此模式) ...

  9. oracle数据迁移之Exp和Expdp导出数据的性能对比与优化

    https://wangbinbin0326.github.io/2017/03/31/oracle%E6%95%B0%E6%8D%AE%E8%BF%81%E7%A7%BB%E4%B9%8BExp%E ...

随机推荐

  1. wyx20162314实验报告1

    北京电子科技学院BESTI实验报告 课程:程序设计与数据结构 班级: 1623 姓名: 王译潇 学号:20162310 指导教师:娄佳鹏老师.王志强老师 实验日期:2017年3月26号 实验密级: 非 ...

  2. java中最常用jar包的用途

    jar包用途 axis.jarSOAP引擎包commons-discovery-0.2.jar用来发现.查找和实现可插入式接口,提供一些一般类实例化.单件的生命周期管理的常用方法.jaxrpc.jar ...

  3. NOIP 数字游戏

    描述 丁丁最近沉迷于一个数字游戏之中.这个游戏看似简单,但丁丁在研究了许多天之后却发觉原来在简单的规则下想要赢得这个游戏并不那么容易.游戏是这样的,在你面前有一圈整数(一共n个),你要按顺序将其分为m ...

  4. 团体程序设计天梯赛 L2-018. 多项式A除以B(模拟)

    题意:给你A,B两个多项式,问你A/B的值:注意多项式给你的是每个式子的指数与系数:保留到一位小数,如果出现系数为0(保留后也是)的情况,请不要输出它,如果没有非系数为0的情况就输出特殊 题解:多项式 ...

  5. 基于开源库jsoncpp的json字符串解析

    json(JavaScript Object Notation)是一种轻量级高效数据交换格式.相比于XML,其更加简洁,解析更加方便.在实习期间,我负责的程序模块,多次使用到json进行数据传输.由于 ...

  6. Spring -- spring整合struts2

    1. 概述 spring和struts整合: 1.创建web程序 2.引入struts2类库. 3.创建HelloWorldAction package cn.itcast.struts2.actio ...

  7. 使用mybatis如果类属性名和数据库中的属性名不一样取值就会为null

    使用mybatis时如果类属性名和数据库中的属性名不一样取值就会为null 这是不能再去改变javabean中的属性,只能改变sql语句.语句如下所示: <select id="sel ...

  8. 真相大白:为什么Entity Framework不能进行跨数据库查询(附解决方法)

    在上篇随笔中,我们发现Entity Framework在构建SQL语句时,将ToTable("CNBlogsTex.dbo.blog_PostBody")中的"CNBlo ...

  9. 转 IOS动态类型isKindOfClass, isMemberOfClass

    对象在运行时获取其类型的能力称为内省.内省可以有多种方法实现. 判断对象类型 -(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例 -(BOOL) is ...

  10. IOS-通讯录

    一.通讯录简介 iOS提供了AddressBook.framework框架,允许开发者与设备中的通讯录进行数据交互   二.查询授权状态 可以调用ABAddressBookGetAuthorizati ...