zoukankan      html  css  js  c++  java
  • Oracle11g空表导出设置

      

    alter system set deferred_segment_creation=false;
    select 'alter table '||table_name||' allocate extent;' from user_tables where segment_created='NO'

    处理Oracle导出dmp文件无法处理空表,以及少表的情况
    方法1、批量处理空表

    步骤1、先分析表
            生成分析语句
            --select 'analyze table '||table_name||' compute statistics;' from user_tables;

    步骤2、将分析语句拿出来执行
            类似以下语句
            analyze table table_name compute statistics;

    步骤3、处理空表
            生成处理语句
            --select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0;
    步骤4、执行处理语句
            类似以下语句
            alter table table_name allocate extent;
    步骤5、查询所有空表
            --select table_name from user_tables where NUM_ROWS=0;

    方法2、设置deferred_segment_creation参数

    SQL> show parameter deferred_segment_creation
    NAME                                 TYPE        VALUE 

    ------------------------------------ ----------- ------------------------------ 
    deferred_segment_creation            boolean     TRUE
    SQL> alter system set deferred_segment_creation=false;
    系统已更改。
    SQL> show parameter deferred_segment_creation 

    NAME                                 TYPE        VALUE 

    ------------------------------------ ----------- ------------------------------ 

    deferred_segment_creation            boolean     FALSE

    需注意的是:该值设置后对以前导入的空表不产生作用,仍不能导出,只能对后面新增的表产生作用。如需导出之前的空表,只能用第一种方法。
     

    考虑到有的库中表较多(例如我接触到的某一个库有7000+张表手动分析每一张表起来较为繁琐,后期将发布一个java脚本用于自动分析表(本文中两种方法为参考其他博主资料)

  • 相关阅读:
    ORACLE常用SQL(session&badSql)
    归档日志满解决方法
    SPRING MVC总结
    Java中分割字符串
    无废话ExtJs 入门教程二十一[继承:Extend]
    无废话ExtJs 入门教程二十[数据交互:AJAX]
    WAMP 80端口被Microsoft-HTTPAPI/2.0占用的解决办法
    WampServer安装图解教程
    vmware tools安装程序无法继续,Microsoft Runtime DLL安装程序未能完成安装。的解决方法
    WordPress添加网站图标
  • 原文地址:https://www.cnblogs.com/joyanli/p/13221055.html
Copyright © 2011-2022 走看看