oracle1455错误解决办法.doc_第1页
oracle1455错误解决办法.doc_第2页
oracle1455错误解决办法.doc_第3页
oracle1455错误解决办法.doc_第4页
oracle1455错误解决办法.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

oracle 1455 错误解决办法 ORA-01455: 转换列溢出整数数据类型在用 expuser/pwdoraclesidfile=e:abc530.dmp 导出oracleDmp时报错了,错误如下EXP-00056: ORACLE error 1455 encounteredORA-01455: converting column overflows integer datatypeEXP-00000: Export terminated unsuccessfully在网上查了查都是:ORA-01455: 转换列溢出整数数据类型,Export 命令会将表的statistics 值转成成整形。 当这个statistics值超过231-1时,就会报这个错误。最后在exp命令后加 “INDEXES=n STATISTICS=none”这两个参数,exp user/pwdoraclesid file=e:abc530.dmp INDEXES=n STATISTICS=none就可以成功导出了。/tianlesoftware/article/details/6251652Oracle exp EXP-00008 和ORA-01455: converting column overflows integer datatype 的解决方法 分类: Oracle 故障解决案例 2011-03-15 19:15 914人阅读 评论(1) 收藏 举报 Oracle 用exp 导出数据库的时候,可能会遇到这个错误:Encountering errors in Export logfileEXP-00008: Oracle error # encounteredORA-01455: converting column overflows integer datatype当我们在exp命令加上参数:INDEXES=n STATISTICS=none 后就不会报这个错误。导致这个错误原因:Export 命令会将表的statistics 值转成成整形。 当这个statistics值超过231-1时,就会报这个错误。 解决方法:1. 通过dba_tables 和 dba_indexes 来查看对应表的值。 即num_rows值,看是否超过了231-1。如果表的numrows超过了,可以手工的修改表的这个值,如:SQL execute sys.dbms_stats.set_table_stats( SCOTT, EMP, numrows = 1000000000000);该命令格式:DBMS_STATS.SET_TABLE_STATS(, , = )2. 删除对应的统计信息表:SQLANALYZE TABLE DELETE STATISTICS 索引:SQLANALYZE INDEX DELETE STATISTICS 或者使用:execute sys.dbms_stats.delete_index_stats(ownname = scott, indname = my_indx_1);execute dbms_stats.delete_table_stats(ownname = scott, tabname=table_name)修改完之后,在导,就没有问题了。- Blog: /tianlesoftware 网上资源: 相关视频:/tianlesoftware/archive/2009/11/27/4886500.aspx DBA1 群:62697716(满); DBA2 群:62697977(满) DBA3 群:62697850(满) DBA 超级群:63306533(满); DBA4 群: 83829929 DBA5群: 142216823聊天 群:40132017-加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请How do I fix ORA-01455 error on 11g Release 2 oracle database?INTRODUCTIONToday, using my test Oracle 11g Release 2 on one virtual machine, to test the export of one schema.I was exporting schema n 11.2 database With 10g Client. The export Gave an Ora-01455.The export failed with the following detailed error :. exporting referential integrity constraints. exporting triggersEXP-00056: ORACLE error 1455 encounteredORA-01455: converting column overflows integer datatypeEXP-00000: Export terminated unsuccessfully.I remember I have solved this issue one month ago when one Oracle user posted the issue on the OTN forum. I help him to fix the issue.After fixing the problem, I thought it would be a good idea to post the solution here so everyone can solve it in the future;THE ERROR. exporting referential integrity constraints. exporting triggersEXP-00056: ORACLE error 1455 encounteredORA-01455: converting column overflows integer datatypeEXP-00000: Export terminated unsuccessfullyThis is an Oracle Bug. The root cause is that the converted form of the specified expression was too large for the specified datatype. (from web site).SOLUTIONI have fixed the problem using one of the following solutions, Therefore, this cannot offer any guarantee of fix for such situations.Solution 1 : Try with an Oracle 11g Release 2 EXP client against the Oracle 11g Release 2.Solution 2 : Use the triggers=n option, that allows an export of a schema made by an Oracle 10.2 client against an Oracle 11g release 2 to complete successfully.The article is also posted here in Oracle mix :/group_messages/149104-how-do-i-fix-ora-01455-error-on-11g-release-oracle-databaseNice Reading and Thank you,Wissem EL KHLIFIsqlplus / as sysdbasqlnoaudit sessionThen export again.Comment by Wendy April 1, 2011 7:55 pm | Reply 1.HiYou said Triggers=n, but i need all the triggers with my Export.Is there any other solution.RegardsNeeraj BansalComment by Neeraj Bansal May 21, 2011 12:50 pm | Reply 2.Tried the above method the problem remains the same.EXP-00056: ORACLE error 1455 encounteredORA-01455: converting column overflows integer datatypeEXP-00000: Export terminated unsuccessfullyComment by Narasimha July 18, 2011 10:37 am | Reply 3.recompile any triggers,views etc, orwhere the exception occurs.exporting referential integrity constraints. exporting triggersEXP-00056: ORACLE error 1455 encounteredrecompile invalid triggers;retry expComment by Sonerb August 16, 2011 11:26 am | Reply RSS feed for comments on this post. TrackBack URI /view/7beb56f57c1cfad6195fa702.htmllxy 补充:服务器端: Windows 2008 11GR2 ()客户端: Windows 10G 32位的同事说现场的机器是,EXP时候出现:EXP-00056: ORACLE error 1455 encounteredORA-01455: converting column overflows integer datatypeEXP-00000: Export terminated unsuccessfully找到本地的环境,服务器是2003 ,11g是R1的,,客户端 , 执行EXP再现了该错误。一、按照网上说的,执行sqlplus / as sysdbasqlnoaudit sessionThen export again. 不好用!二、据说导致这个错误的原因为:Export 命令会将表的statistics 值转成成整形。 当这个statistics值超过231-1时,就会报这个错误。 使用EXP参数 indexes=N statistics=none 甚至加上triggers=n,仍旧同样的错误。三、查找大表,发现该用户表都很小,刚开始实施,最大的表才20多万,按照1. 通过dba_tables 和 dba_indexes 来查看对应表的值。 即num_rows值,看是否超过了231-1。如果表的numrows超过了,可以手工的修改表的这个值,如:SQL execute sys.dbms_stats.set_table_stats( SCOTT, EMP, numrows = 1000000000000);该命令格式:DBMS_STATS.SET_TABLE_STATS(, , = )2. 删除对应的统计信息表:SQLANALYZE TABLE DELETE STATISTICS 索引:SQLANALYZE INDEX DELETE STATISTICS 或者使用:execute sys.dbms_stats.delete_index_stats(ownname = scott, indname = my_indx_1);execute dbms_stats.delete_table_stats(ownname = scott, tabname=table_name)修改完之后,再导,仍然同样的问题。四、都不好用,最后用修改客户端字符集的方式好用了:Set nls_lang=simplified Chinese_china.zhs16gbkExp zhtjgct/gctkl11g buffer=5120000 log=c:lxy_c10g_s11gr1.log file=c:c10g_s11gr1.dmp如此都好用了,在我的机器和238另外一台10g的机器都测试了一遍,导出成功:日志文件最后内容:. . 正在导出表 W_ALIAS导出了 26 行. . 正在导出表 W_ALIAS_ZGS导出了 26 行. 正在导出同义词. 正在导出视图. 正在导出存储过程. 正在导出运算符. 正在导出引用完整性约束条件. 正在导出触发器. 正在导出索引类型. 正在导出位图, 功能性索引和可扩展索引. 正在导出后期表活动. 正在导出实体化视图. 正在导出快照日志. 正在导出作业队列. 正在导出刷新组和子组. 正在导出维. 正在导出 post-schema 过程对象和操作. 正在导出统计信息成功终止导出, 没有出现警告。Conn system/oraclekl11g/create directory db_bak as c:testdump;create or replace directory db_bak as c:testdump;expdp system/oraclekl11g schemas=zhtjgct dumpfile=expdp_c10g_s11g.dmp DIRECTORY=db_bak logfile=expdp_c10g_s11gr1.logORA-39002 ORA-39070 ORA-39087 with Datapump TweetIf you are using the datapump (expdp or impdp etc.) and you get the following errors:ORA-39002: invalid operationORA-39070: Unable to open the log file.ORA-39087: directory name DATA_PUMP_DIR is invalidThere is no directory defined. You have to define it on the server.Choose a user with the rights to create an directory, start sqlplus and enter followingcommand:create directory data_pump_dir as exphddatapump;for windows.create directory data_pump_dir as exphddatapump;for windows.create directory data_pump_dir as x:exportdrivedatapump;Be sure, that the directory exists on the os before you define it in the database!远程连接服务器建立目录之后出现连接到: Oracle Database 11g Enterprise Edition Release .0 - PrWith the Partitioning, OLAP, Data Mining and Real Application TestingORA-39002: 操作无效ORA-39070: 无法打开日志文件。ORA-29283: 文件操作无效ORA-06512: 在 SYS.UTL_FILE, line 488ORA-29283: 文件操作无效使用expdp的心得:第一步:首先使用DBA权限的用户创建directory,我使用system ,可以在服务器本地创建,也可以远程连接sqlplus进行创建,使用的将是服务器上面的路径。要确保创建directory时,操作系统层面的路径已经存在。如果不存在,可以删除directory后,再重新建立directory。SQLcreate directory data_pump_dir as exphddatapump; 此处注意,即便操作系统层面不存在相应的目录,也会显示创建成功,但是在执行expdp的时候会出现错误:ORA-39002: 操作无效ORA-39070: 无法打开日志文件。ORA-39087: directory name DUMPDIR is invalid第二步:连接到其它dba权限的用户,授权给要使用expdp的用户,也可远程执行,即expdp 中的userid中的用户,而不是schemas=后面的用户:SQLgrant read,write on directory DUMPDIR to system;可以使用角色授权:SQLgrant read,write on directory DUMPDIR to system;如果没有授权使用,也会出相应的错误第三步:查看管理理员目录,也可远程执行:select * from dba_directories;建立的directory 都是隶属于sys用户的,列出的路径也都是指服务器上面的,可以在此对照下物理目录是否存在问题。注意事项:1、需要注意的是,虽然可以远程建立目录、授权和查询,expdp只能在服务器端执行,在客户端执行会出现:连接到: Oracle Database 11g Enterprise Edition Release .0 - PrWith the Partitioning, OLAP, Data Mining and Real Application TestingORA-39002: 操作无效ORA-39070: 无法打开日志文件。ORA-29283: 文件操作无效ORA-06512: 在 SYS.UTL_FILE, line 488ORA-29283: 文件操作无效等类似的错误。2、使用expdp导出的11g的数据可以使用 10g的impdp导入到10g的数据库里面,需要在两个命令里面都添加一个version =XXXX 指定相应的版本号。3:userid可以这样写,看帮助同样是help=yIMPDP USERID=SYS/cuc2009cucf as sysdba schemas=sybj directory=DATA_PUMP_DIR dumpfile=aa.dmp logfile=aa.log version=.0补充说明:测试了一下上面的11G 到10G里面的方式,可以正确导入有两个问题:(1)在导入的时候,IMPDP 里面可以不用加version=xxxx这个参数,只在11g的EXPDP里面添加此参数就可以了impdp userid=system/manager directory=db_bak dumpfile=11g_for_10g logfile=impdp_11g_to_10g schemas=zhtjgct (2)schemas所指定导入的用户,在导入执行之前,事先不用建立好,当然如果你设定了自己的表空间,需要首先建立相关的表空间。测试了下,导入之后使用的默认表空间、临时表空间都和源库里面的一致。如果没有该用户,impdp 会自动建立该用户,如果已经有该用户,impdp 会将DMP文件里面的表添加到该用户里。(3)如何实现IMP 里面的 fromuser=a1 touser=TEST1 两者不同的情况呢,即从一个用户要导入到另外一个用户里。Expdp userid=system/manager schemas=a1 directory=db_bak dumpfile=expdp_a1 logfile=expdp_a1.log 在用impdp导入数据时:impdp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论