日期:2014-05-16  浏览次数:20405 次

Oracle exp-00003 未找到段(0,0)的存储定义

今天做数据库的移植,将开发数据库用exp命令导出,然后导入到生产数据库,一切正常,导入导出均无任何错误,但是,当对生产数据库做exp定时备份时,却出现exp-00003错误,查看出现错误的表,发现有记录,不存在segment没有分配的可能,所以此原因排除,查看出现错误的具体表,发现此表的索引中包含小写字母,将该表的索引删除,然后重新建立,然后使用exp导出,发现此表的exp00003错误消失,分析原因可能是由于从开发服务器导出的数据库文件在导入生产服务器时,由于索引名称的原因,导致索引建立失败。后来将生产数据库中user_indexes中索引名称包含小写字母的所有索引删除,按命名规范重新建立索引后,所有表导出正常,无exp00003错误出现。开发数据库中索引小写,可能是用pd生成sql脚本时,在创建索引的语句中包含了引号导致的,以后在数据库建表时需更加仔细,防止此类问题再次出现。