服务器上做oracle数据备份,以前一直是正常的,最近一同事对数据库做了些操作,今天进服务器看日志时发现了这个问题。
网上找了些资料,没有解决。
可以排除的几点是:1、不可能是版本不一致的问题,因为我是在服务器上备份的(PS:我的oracle版本是11g 64bit)
2、索引和统计信息的num_rows都未超过2^31-1我的导出语句:exp username/password file=D:\aa.dmp owner=pbmis log=D:\log\bb.log  
日志信息:. . 正在导出表                       TB_ZJ_XYR导出了         570 行
. . 正在导出表                TB_ZJ_ZCHDJDAJXX导出了           0 行
. . 正在导出表                    TB_ZJ_ZXQKJL导出了          10 行
. 正在导出同义词
. 正在导出视图
. 正在导出存储过程
. 正在导出运算符
. 正在导出引用完整性约束条件
. 正在导出触发器
. 正在导出索引类型
. 正在导出后期表活动
. 正在导出实体化视图
. 正在导出快照日志
EXP-00008: 遇到 ORACLE 错误 1455
ORA-01455: 转换列溢出整数数据类型
EXP-00000: 导出终止失败===================================================请各路高手指教=================================

解决方案 »

  1.   

    采用 expdp 导出,问题就解决了。
      

  2.   

    如何用 expdp 导出???求教!!!
      

  3.   


    $expdp scott/tiger DUMPFILE=scott.dmp DIRECTORY=dmpdir SCHEMAS=test 
    $expdp scott/tiger DUMPFILE=tmp_dump.dmp DIRECTORY=dmpdir TABLES=(tmp_test:p1,tmp_test:p2) JOB_NAME=tmp_dump LOGFILE=tmp_dump.log
    $expdp scott/tiger DUMPFILE=full.dmp DIRECTORY=dmpdir FULL=Y JOB_NAME=full 
    $expdp scott/timer DUMPFILE=tmp_200703.dmp DIRECTORY=dmpdir TABLES=tmp QUERY=\"where to_char\(create_time,\'yyyy-mm-dd\'\)\<\'2007-04\'\" 常用一些参数说明: 
    --------------------------------------------------------------------------------SCOTT/TIGER:用户/密码(*) DUMPFILE:导出后的文件名(*) DIRECTORY:导出文件存放位置(位于服务器端)(*) CONTENT:导出文件中包含的内容(默认为:ALL,可选DATA_ONLY/METADATA_ONLY) FILESIZE:指定导出文件大小(单位为bytes). JOB_NAME:此次导出进程使用的名称,方便跟踪查询(可选) LOGFILE:日志文件名(默认为:export.log)