首页 > 开发 > 综合 > 正文

解決 Export error ORA-31600

2024-07-21 02:33:56
字体:
来源:转载
供稿:网友

  You are performing a database eXPort against your 9.2 database. The database export abnormally ends with the following errors: EXP-00056: Oracle error 31600 encountered ORA-31600: invalid input value EMIT_SCHEMA for parameter NAME in function SET_TRANSFORM_PARAM ORA-06512: at "SYS.DBMS_SYS_ERROR", line 105 ORA-06512: at "SYS.DBMS_METADATA_INT", line 3926 ORA-06512: at "SYS.DBMS_METADATA_INT", line 4050 ORA-06512: at "SYS.DBMS_METADATA", line 836 ORA-06512: at line 1 EXP-00000: Export terminated unccessfully .
  
  这个问题困扰我好几天,原本好好的export在上了Oracle的patchset后,竟然无法进行fully export,查了很久只知道是个bug,最后终於知道解决办法,分享给各位。
  
  1) 假如在安装patchset之前就已经有资料库存在,则安装好patch后必须补做下面程序:
  
  sqlplus /nolog
  
  SQL>connect sys as sysdba Connected.
  
  SQL>shutdown normal; after database is shutdown ...
  
  SQL>startup migrate [pfile=...] use the pfile if using one, skip if using spfile
  
  SQL>spool c:catpatch.log
  
  SQL>@c:oracleora92 dbmsadmincatpatch.sql
  
  SQL>spool off
  
  SQL>shutdown normal; after database is shutdown ...
  
  SQL>startup restrict [pfile=...] use the pfile if using one, skip if using spfile
  
  SQL>@c:oracleora92 dbmsadminutlrp.sql
  
  SQL>alter system disable restricted session;
  
  执行过catpatch.sql后,你的资料库就可以继续正常使用fully export了。(此script会执行很久)
  
  2) 若是安装patch后才利用DBCA建立新资料库,若在DBCA GUI下你选择OLTP OR OLAP...等资料库模式来建立,则资料库建好仍然必须补做catpatch.sql,若你是选择customer方式来建立资料库,他会帮你执行相关程序,也就是说你不需要在补做catpatch.sql了,不过这种方式的建立DB时间较长。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表