zoukankan      html  css  js  c++  java
  • 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' 中)
  • 相关阅读:
    vue中使用clipboard.js复制分本
    聊聊IOCP,聊聊异步编程
    dubbo RPC超时异常小结
    redis4.0 集群,jedis客户端连接配置
    Centos7 Zookeeper
    阿里云Centos 7.4 mssql-server
    Redis4.0 Cluster — Centos7
    Elasticsearch学习笔记 一
    Centos7安装ES 和 Docker搭建ES
    使用Docker快速创建.Net Core2.0 Nginx负载均衡节点
  • 原文地址:https://www.cnblogs.com/kaka100/p/3594950.html
Copyright © 2011-2022 走看看