imp导入时出现imp-00017 ora-06550的解决办法

原创
2016-06-07 17:05:53 1486浏览

将exp逻辑备份文件导入到备库中时出现了错误,相关错误信息如下:

将exp逻辑备份文件导入到备库中时出现了错误,相关错误信息如下:

这是个很常见的导入警告,通常与数据库/客户端版本有关。比如这里,源数据库和目标数据库版本都是10.2.0.4,但导出的时候使用了10.2.0.1的客户端:

在别的项目中,还遇到过从10.2.0.2数据库中导入到10.2.0.4目标库时出现了同样的问题,不管imp/exp使用了什么版本。


解决办法,就是在exp或imp时加上一个参数来禁用统计信息的导出/导入: statistics=none

那么,不导入统计信息会有什么影响呢。其实在oracle 10g以后,默认定时采集统计信息,可以在dba_scheduler_jobs视图中查询到该任务:GATHER_STATS_JOB。并且可以在dba_scheduler_job_run_details中看到相应的执行情况。

手动采集统计信息:在sys用户中执行dbms_scheduler.run_job('GATHER_STATS_JOB') 存储过程(等价于执行dbms_stats.gather_database_stats_job_proc);使用dbms_stats包中的gather_xxx_stats来采集。停用定时采集统计信息的任务:DBMS_SCHEDULER.DISABLE('GATHER_STATS_JOB')

oracle 10g中修改自动采集统计信息的时间策略:通过sys用户登录执行存储过程dbms_scheduler.set_attribute来修改,,例如

dbms_scheduler.set_attribute('GATHER_STATS_JOB','SCHEDULE_NAME','MAINTENANCE_WINDOW_GROUP')

dbms_scheduler.set_attribute('WEEKEND_WINDOW','DURATION','+000 05:00:00')

查询:

linux

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。