ORA-01562 failed to extend rollback segment number stringCause: Failure occurred when trying to extend rollback segment.Action: This is normally followed by another error message that caused the failure. You may take the rollback segment offline to perform maintenance. Use the ALTER ROLLBACK SEGMENT OFFLINE command to take the rollback segment offline. ORA-01650 unable to extend rollback segment string by string in tablespace stringCause: Failed to allocate an extent for rollback segment in tablespace.Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more files to the tablespace indicated.ORA-27039 create file failed, file size limit reachedCause: An attempt was made to create a file that exceeds the process' file size limit, additional information indicates which function encountered the error.Action: Raise the file size limit.IMP-00028 partial import of previous table rolled back: number rows rolled backCause: Import encountered an Oracle error while trying to import a table. Action: Look up the accompanying Oracle message in the ORA message chapters of this manual and take appropriate action. Then, if necessary, re-import the table. 

解决方案 »

  1.   

    老大,HELP我也找的到啊,能不能给点建设性的意见啊:)
      

  2.   

    实际上我要做的是把NT下的数据库迁移到UNIX下去,我的做法是在UNIX下建空库,然后将DMP导入到新库中。只有一晚的时间,我怕导入时来不及,我想用增量导出再导入的方法来做,可数据有的导不进去蛮烦的,另外问下,用增量导出时,第一次完全导出的文件是不是在第二次增量导出时也要存在才行啊?
    1: exp system/manager inctype=complete file=c:\full_0913.dmp (9月13导入全备份)
    2: exp system/manager inctype=incremental file=c:\full_0913.dmp  (14日导出增量,该处不能写full_0914吗?)
    两次的文件明也必须相同吗?
      

  3.   

    增加RBS可以清除部分导入错误;
    原来DMP是普通表存储的,新数据库使用了分区表IMP,建议从原系统中全部导出,再在新系统中重新导入。两次的文件名可以不相同
      

  4.   

    armu80830(此情可待) 兄:
    现在是从原系统中全部导出然后导入到新系统的:)如果两次文件名不同的话,那EXP是怎么确定上次导出了哪些,这次需要导出哪些呢,是把导出信息保存到了数据库中吗?还是在第二次EXP时检查上次导出的文件再和数据库现有数据比较呢?根据你的说法,那么第一次导出完全的DMP后,就可以把那个DMP转储后删除啦?
      

  5.   

    1、重做一次全备份;
    2、增加回滚段;
    3、删除要倒入的用户;
    4、重建要倒入用户;
    5、IMP 刚做的备份;
      

  6.   

    imp加上参数commit=y可以减小对回退段的使用,具体说明可以去看一下imp的文档
      

  7.   

    应该去看看imp的文档,建议使用commit=y为什么呢?
    COMMIT A value of Y specifies that Import should commit after
    each array insert. By default, Import commits only after
    loading each table, and Import performs a rollback
    when an error occurs, before continuing with the next
    object. Specifying COMMIT=Y prevents rollback
    segments from growing inordinately large.
      

  8.   

    我认为对于1000万条数据量的数据库的exp/imp时间上应该不存在什么问题(我们用的都是上亿记录)。
    建议你做如下操作:
    1、创建一个与你exp完全一样的实例(包括表空间等所有属性)
    2、imp你的数据,然后再将相关的表分区等修改如果以上方法不行,再建议你增加如下两个参数导出时:
    direct=y
    recordlength=65535导入时:
    commit=y indexes=n ignore=y
    baffer=10485760(可自己调整)这样能极大的提高速度,可以试试
      

  9.   

    增加回滚空间,把回滚段的参数修改 ATLTER ROLLBACK SEGMENT R01 STORATE(NEXT 10M);
      

  10.   

    imp时增加参数buffer=200000,来实现
      

  11.   

    看来用COMMIT=Y是个比较理想的方法,不过现在还没有试过:)
    下次导时试试,我使用的还是笨方法,增加回滚段空间,导了14个小时才把整个库灌进去....
    IMP里有些参数真还没有看过,有空真得研究一下啦,马上揭贴,谢谢诸位~