• ORA-30036 表空间溢出


    ORA-30036删除大数据量报错
    a:分析是undo表空间不足造成
    t1 300w行记录
    
    
    
    
    SQL> delete from t1;
    delete from t1
                *1 行出现错误:
    ORA-30036: 无法按 8 扩展段
     (在还原表空间 'UNDOTBS5' 中)
    
    
    
    
    select (tablespace_name) "表空间名",     
           sum(total_size) "总空间/M",     
           sum(total_free) "剩余空间/M",     
           sum(max_continue) "最大连续空间/M",     
           round(sum(total_free) / sum(total_size) * 100) "剩余百分比/ratio"    
      from ((select tablespace_name,     
                    (0) total_size,     
                    round(sum(bytes) / 1024 / 1024, 2) total_free,     
                    round(max(bytes) / 1024 / 1024, 2) max_continue     
               from dba_free_space     
              group by tablespace_name) union all    
            (select tablespace_name, round(sum(bytes) / 1024 / 1024, 2), 0, 0     
               from dba_data_files     
              group by tablespace_name))     
     group by tablespace_name     
     order by 5 asc;  
    
    
    
    表空间名                         总空间/M 剩余空间/M 最大连续空间/M 剩余百分比/ratio
    ------------------------------ ---------- ---------- -------------- ----------------
    UNDOTBS5                               50          0              0                0
    UNDOTBS3                               10          0              0                0
    UNDOTBS2                               10        .13            .06                1
    UNDOTBS4                               10        .31            .06                3
    USERS                               317.5     127.13          126.5               40
    SYSAUX                                600     353.38            352               59
    SYSTEM                                700     428.38            428               61
    JERRY                                 550     411.94         362.94               75
    TEST                                    5       3.81           3.75               76
    TBS2                                    5       3.94           3.88               79
    TOM                                     5       3.94           3.94               79
    
    表空间名                         总空间/M 剩余空间/M 最大连续空间/M 剩余百分比/ratio
    ------------------------------ ---------- ---------- -------------- ----------------
    UNDOTBS1                              200     178.44            174               89
    TOM2                                   20         19             19               95
    SOCTT_TBS                             200     198.63         198.63               99
    
    
    
    解决方案
    1:调整表空间的大小
     //300w
     alter database datafile 'D:DEVORACLEDATATESTUNDOTBS05.DBF' resize 1000M;//解决方案ok
    
    
    2:重新创undo表空间并切换为当前undo表空间
    select tablespace_name from dba_tablespaces;
    select file_name from dba_data_files; 
    create undo tablespace undotbs6 datafile 'D:DEVORACLEDATATESTUNDOTBS06.DBF' size 2000m;
    alter system set undo_tablespace=UNDOTBS6
    
    原本想创建一个大的表空间替换现有的表空间,,报错
    ORA-00604: 递归 SQL 级别 1 出现错误
    ORA-30036: 无法按 8 扩展段 (在还原表空间 'UNDOTBS5' 中)
  • 相关阅读:
    使用top观察一进程的cpu历史占用情况
    djangoForm组件
    djangoAdmin组件
    js-metisMenu
    css-bootstrap
    flask环境安装
    python数据结构转换&格式化
    linux安装odbc for mysql
    json模块
    urllib模块
  • 原文地址:https://www.cnblogs.com/kaka100/p/3594950.html
Copyright © 2020-2023  润新知