博客
关于我
Oracle-impdp 按照用户导出,导入后发现存在部分索引不存在,缺失索引是关联其它用户创建的?
阅读量:445 次
发布时间:2019-03-06

本文共 962 字,大约阅读时间需要 3 分钟。

在使用Oracle数据泵(impdp)进行数据导出和导入时,用户可能会遇到部分索引缺失的问题,特别是当这些索引是由其他用户创建的。以下是对此问题的详细分析和解决方案:

  • 问题背景

    • 用户在进行数据泵导出(expdp)和导入(impdp)操作时,发现导入的表中存在部分索引缺失。
    • 这些缺失的索引是由其他用户(如SYS)创建的,而不是导入用户自己创建的。
  • 测试步骤分析

    • 测试环境为11G单实例,用户创建了表system.test1system.test2,并为test_usr用户授予了select权限。
    • 创建了两个索引:test_usr.ind_object_idtest_usr.ind_object_id2,分别在test1test2表中。
    • 使用expdp导出数据时,指定了INCLUDE=index选项,以确保索引被导出。
    • 使用impdp导入时,同样指定了INCLUDE=index选项,以确保索引被正确导入。
  • 问题原因分析

    • 导出选项的问题:虽然expdp中使用了INCLUDE=index选项,但这可能不足以确保所有索引都被正确导出,尤其是当索引是由其他用户创建时。
    • 导入选项的问题:在impdp导入时,如果没有正确指定INCLUDE=index,或者没有处理表空间和权限,可能会导致索引无法被正确创建。
    • 表空间和权限问题:确保导入时的表空间和权限设置正确,以允许索引的创建。
  • 解决方案

    • 正确配置导入选项:在impdp导入时,确保使用INCLUDE=index选项,以处理所有索引。
    • 检查表空间和权限:确认导入时的表空间和权限设置正确,避免索引创建时出现权限不足的问题。
    • 验证导出数据完整性:确保在expdp导出时,所有相关的DML和DDL语句都被正确导出,尤其是索引的创建语句。
    • 处理系统用户的索引:如果索引是由系统用户创建的,确保在导入时系统用户有足够的权限来创建这些索引。
  • 优化建议

    • impdp导入时,使用``选项来确保所有相关的表和索引都被正确导入。
    • 定期进行测试,验证导入后的数据完整性,尤其是索引是否存在。
    • 检查和更新表空间的大小和参数,确保索引能够被正确创建和使用。
  • 通过以上分析和解决方案,可以有效地解决在使用Oracle数据泵导入时索引缺失的问题,确保所有必要的索引都被正确导入和创建。

    转载地址:http://colyz.baihongyu.com/

    你可能感兴趣的文章
    OSPF故障排除技巧
    查看>>
    spring配置文件中<context:property-placeholder />的使用
    查看>>
    OSPF有哪些优势?解决了RIP的什么问题?
    查看>>
    OSPF理论
    查看>>
    OSPF的七种类型LSA
    查看>>
    OSPF的安全性考虑:全面解析与最佳实践
    查看>>
    OSPF知识点大全,网络工程师快速收藏!
    查看>>
    ospf综合实验2 2012/9/8
    查看>>
    OSPF规划两大模型:双塔奇兵、犬牙交错
    查看>>
    OSPF认证
    查看>>
    OSPF设计原则,命令以H3C为例
    查看>>
    ospf路由 华3_动态路由OSPF基本原理及配置,一分钟了解下
    查看>>
    OSPF路由协议配置
    查看>>
    OSPRay 开源项目教程
    查看>>
    VC++实现应用程序对插件的支持
    查看>>
    OSS 访问图片资源报“No ‘Access-Control-Allow-Origin‘”的错误
    查看>>
    ossfs常见配置错误
    查看>>
    Ossim4系统故障处理
    查看>>
    Spring赌上未来:响应式的 WebFlux 框架更优雅,性能更强!
    查看>>
    oss报UnknownHost,k8s设置hostAliases参数
    查看>>