Oracle 表空间高水位收缩全攻略

news2025/4/13 20:38:44

1. 概述

本文档是针对某个特定用户表空间收缩的文档,实际操作要结合生产库具体情况。主要包括以下几个流程:

  • 收集当前数据库相关信息
  • 降低数据库表高水位线
  • Resize 收缩数据文件
    具体细节详见以下章节。

2. 时间规划

操作类型预估时间实际时间
数据库信息收集30min10min
降低高水位线30min20min
Resize 数据文件30min10min

3. 详细步骤

3.1. 收集数据库相关信息

3.1.1. 查看表空间使用情况

SQL> SELECT total.tablespace_name,
       Round(total.MB, 2)           AS Total_MB,
       Round(total.MB - free.MB, 2) AS Used_MB,
       Round(( 1 - free.MB / total.MB ) * 100, 2)
       || '%'                       AS Used_Pct
FROM   (SELECT tablespace_name,
               Sum(bytes) / 1024 / 1024 AS MB
        FROM   dba_free_space
        GROUP  BY tablespace_name) free,
       (SELECT tablespace_name,
               Sum(bytes) / 1024 / 1024 AS MB
        FROM   dba_data_files
        GROUP  BY tablespace_name) total
WHERE  free.tablespace_name = total.tablespace_name;

TABLESPACE_NAME                  TOTAL_MB    USED_MB USED_PCT
------------------------------ ---------- ---------- -----------------------------------------
SYSAUX                               5000    1359.19 27.18%
SYSTEM                               1024     625.13 61.05%
TS_AUD                               4000    1483.19 37.08%
TS_BJCA                               512     118.63 23.17%
TS_BT                                 512        .06 .01%
TS_CHDD                              2000     864.06 43.2%
TS_DATA                           2167482  496135.81 22.89%
TS_FCCH                               512       1.94 .38%
TS_FDC                              50000   36266.88 72.53%
TS_INDEX                           390000  294789.81 75.59%
TS_LOG                              30000   23551.81 78.51%
TS_RMAN                               512     266.06 51.97%
TS_SB                                6000       4594 76.57%
TS_SCJY                             10000     5618.5 56.19%
TS_WHMS                               512     310.38 60.62%
TS_ZLPT                              2048     484.06 23.64%
UNDOTBS1                            60000   59999.63 100%
USERS                                5000    1060.06 21.2% 

# 与客户描述的一致,TS_DATA表空间量大,但实际使用量小。

3.1.2. 查看表空间上的用户

SQL> select owner,tablespace_name ,sum(bytes)/1024/1024/1024 G from dba_segments where tablespace_name = 'TS_DATA' group by owner,tablespace_name;

OWNER                          TABLESPACE_NAME                         G
------------------------------ ------------------------------ ----------
TMC                            TS_DATA                        454.085266
IBMS_SEC                       TS_DATA                        .005004883
PLATFORM                       TS_DATA                        .290893555
SZFDC                          TS_DATA                        .661071777
GTB_APP                        TS_DATA                         .20111084
FDC_ZJJYJZX                    TS_DATA                        7.76208496
SZFDCOA                        TS_DATA                        1.01373291
BWPLATFORM                     TS_DATA                        16.6900024
SZFDC_CA                       TS_DATA                        2.73272705
FDC_YJZX                       TS_DATA                        1.35357666
FLOOR                          TS_DATA                        108.474243
SHENBAO                        TS_DATA                        .002502441
IBMS                           TS_DATA                         1.8303833
FCCH                           TS_DATA                         .26361084
PUCHA                          TS_DATA                         .19140625
FDCYS                          TS_DATA                        7.56640625
RIS_ACCESS                     TS_DATA                        1.08044434

17 rows selected.

3.1.3. 查看表空间TOP 10大表

SQL> select * from (
  2     select owner, segment_name, segment_type, tablespace_name, bytes/1024/1024/1024 "G"
  3     from dba_segments where segment_type = 'TABLE' and tablespace_name = 'TS_DATA' order by bytes desc)
  4  where rownum <= 10;

OWNER               SEGMENT_NAME                         SEGMENT_TYPE       TABLESPACE_NAME              G
------------------- ------------------------------------ ------------------ ------------------- ----------
TMC                 FDC_INFO_QRY_LOG_2020                TABLE              TS_DATA             144.490234
TMC                 TMC_LOG                              TABLE              TS_DATA             86.6728516
TMC                 BIN$tvmjhUBAC37gVAALXeBfRg==$0       TABLE              TS_DATA             50.9677734
TMC                 BIN$tvSoznk+ICjgVAALXeBfRg==$0       TABLE              TS_DATA               30.59375
TMC                 REMC_WS_LOG_REQUEST                  TABLE              TS_DATA             9.87109375
FDCYS               SYS_20191171126389483_TEMP           TABLE              TS_DATA                 3.4375
BWPLATFORM          SOA_SYSTEM_LOG                       TABLE              TS_DATA                  3.125
FDCYS               TRADE_RECORD                         TABLE              TS_DATA                2.90625
TMC                 JG_TBL_FDC_EST_REGISTE               TABLE              TS_DATA             2.87890625
TMC                 MLOG$_FDC_TMC_CONTRACT               TABLE              TS_DATA             1.44433594

3.1.4. 查看表空间TOP 10大索引

SQL> select * from (
  2  select owner, segment_name, segment_type, tablespace_name, bytes/1024/1024/1024 "G"
  3  from dba_segments where segment_type = 'INDEX' and tablespace_name = 'TS_DATA' order by bytes desc)
  4  where rownum <= 10;

OWNER              SEGMENT_NAME                 SEGMENT_TYPE       TABLESPACE_NAME             G
-----------------  ---------------------------- ------------------ ------------------ ----------
TMC                TMC_LOG_PK                   INDEX              TS_DATA              13.03125
BWPLATFORM         SOA_SYSTEM_LOG               INDEX              TS_DATA            .433837891
TMC                INDEX_USER                   INDEX              TS_DATA            .419921875
TMC                INDEX_ORGAN                  INDEX              TS_DATA               .390625
BWPLATFORM         PK_PLAT_USER_LOGIN_LOG       INDEX              TS_DATA            .267150879
TMC                SEI_IX_NAME                  INDEX              TS_DATA            .216796875
TMC                FTVC_IX_EXPIRE_DATE          INDEX              TS_DATA              .1953125
FDCYS              I_TR_YWBJSJ                  INDEX              TS_DATA              .1953125
BWPLATFORM         SYS_C0066879                 INDEX              TS_DATA              .1484375
TMC                FTVC_UK_CERT_NO_FO_ID        INDEX              TS_DATA              .1328125

10 rows selected.

3.1.5. 查看表空间管理方式

SQL> select tablespace_name, block_size,contents, extent_management, segment_space_management, allocation_type, segment_space_management from dba_tablespaces where tablespace_name='TS_DATA';

TABLESPACE_NAME                BLOCK_SIZE CONTENTS  EXTENT_MAN SEGMEN ALLOCATIO SEGMEN
------------------------------ ---------- --------- ---------- ------ --------- ------
TS_DATA                              8192 PERMANENT LOCAL      AUTO   SYSTEM    AUTO

3.1.6. 查看数据文件使用情况

SQL> col file_name for a50
SQL> select file_name, tablespace_name, bytes/1024/1024/1024 "used G", maxbytes/1024/1024/1024 "total G" from dba_data_files where tablespace_name = 'TS_DATA' order by bytes;

FILE_NAME                                          TABLESPACE_NAME                    used G    total G
-------------------------------------------------- ------------------------------ ---------- ----------
/Oradata/2nd_fdc/TS_DATA74.dbf                     TS_DATA                                 5          0
/Oradata/2nd_fdc/TS_DATA76.dbf                     TS_DATA                                 5          0
/Oradata/2nd_fdc/TS_DATA75.dbf                     TS_DATA                                 5          0
/Oradata/2nd_fdc/TS_DATA38.dbf                     TS_DATA                          19.53125          0
/Oradata/2nd_fdc/TS_DATA39.dbf                     TS_DATA                          19.53125          0
/Oradata/2nd_fdc/TS_DATA40.dbf                     TS_DATA                          19.53125          0
/Oradata/2nd_fdc/TS_DATA41.dbf                     TS_DATA                          19.53125          0
/Oradata/2nd_fdc/TS_DATA42.dbf                     TS_DATA                          19.53125          0
/Oradata/2nd_fdc/TS_DATA65.dbf                     TS_DATA                          19.53125          0
/Oradata/2nd_fdc/TS_DATA68.dbf                     TS_DATA                        29.2773438  29.296875
/Oradata/2nd_fdc/TS_DATA69.dbf                     TS_DATA                        29.2773438  29.296875
/Oradata/2nd_fdc/TS_DATA03.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA04.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA05.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA06.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA07.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA08.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA09.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA10.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA15.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA16.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA17.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA20.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA21.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA22.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA23.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA24.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA25.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA26.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA28.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA29.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA30.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA31.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA32.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA33.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA34.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA35.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA36.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA43.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA44.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA45.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA46.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA47.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA48.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA49.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA50.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA51.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA52.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA53.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA54.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA55.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA56.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA57.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA58.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA59.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA60.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA61.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA62.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA63.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA64.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA66.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA67.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA02.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA37.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA01.dbf                     TS_DATA                         29.296875          0
/Oradata/2nd_fdc/TS_DATA71.dbf                     TS_DATA                                30          0
/Oradata/2nd_fdc/TS_DATA72.dbf                     TS_DATA                                30          0
/Oradata/2nd_fdc/TS_DATA73.dbf                     TS_DATA                                30          0
/Oradata/2nd_fdc/TS_DATA70.dbf                     TS_DATA                                30          0
/Oradata/2nd_fdc/TS_DATA27.dbf                     TS_DATA                        31.9550781 31.9999847
/Oradata/2nd_fdc/TS_DATA12.dbf                     TS_DATA                        31.9921875 31.9999847
/Oradata/2nd_fdc/TS_DATA13.dbf                     TS_DATA                        31.9921875 31.9999847
/Oradata/2nd_fdc/TS_DATA18.dbf                     TS_DATA                        31.9921875 31.9999847
/Oradata/2nd_fdc/TS_DATA19.dbf                     TS_DATA                        31.9921875 31.9999847
/Oradata/2nd_fdc/TS_DATA11.dbf                     TS_DATA                        31.9921875 31.9999847
/Oradata/2nd_fdc/TS_DATA14.dbf                     TS_DATA                        31.9921875 31.9999847

76 rows selected.

3.1.7. 查看表空间高水位线情况

SQL> select max(block_id)*8/1024/1024 "G size" from dba_extents where tablespace_name='TS_DATA';

    G size
----------
31.9920731

3.2. 降低高水位线

3.2.1. 检查失效索引(建议处理高水位前和后都要检查。并及时处理失效索引)

--检查分区索引(包括分区表的分区本地索引,分区表的分区全局索引),如果存在重建,并修改并行度 
select 'alter index '||a.index_owner||'.'||a.index_name||' rebuild  partition '||a.partition_name ||' parallel 10;' from 
dba_ind_partitions a 
where a.status='UNUSABLE'; 
select 'alter index '||a.index_owner||'.'||a.index_name||' parallel 1;' from 
dba_ind_partitions a 
where a.status='UNUSABLE’; 

--检查普通索引(包括普通表的索引,分区表的普通全局索引),如果存在重建,并修改并行度 
select 'alter index '||a.owner||'.'||a.index_name||' rebuild  parallel 10;' from 
dba_indexes a 
where a.status='UNUSABLE'; 
select 'alter index '||a.owner||'.'||a.index_name||'   parallel 1;' from 
dba_indexes a 
where a.status='UNUSABLE’;

3.2.2. 查询指定用户中的高水位

# 比较表的行数和表的大小关系。如果行数为0,而表的当前占用大小减去初始化时的大小(INITIAL_EXTENT)后依然很大,那么说明该表有高水位。=====为了保证结果准确,建议先对表进行统计信息收集。
# 查看TMC用户高水位
SQL> SELECT D.OWNER,
  2         ROUND(D.NUM_ROWS / D.BLOCKS, 2),
  3         D.NUM_ROWS,
  4         D.BLOCKS,
  5         D.TABLE_NAME,
  6   ROUND((d.BLOCKS*8-D.INITIAL_EXTENT/1024)/1024)  t_size
  7    FROM DBA_TABLES D
  8   WHERE D.BLOCKS > 10
  9     AND ROUND(D.NUM_ROWS / D.BLOCKS, 2) < 5
 10   AND d.OWNER = 'TMC' ;

OWNER    ROUND(D.NUM_ROWS/D.BLOCKS,2)   NUM_ROWS     BLOCKS TABLE_NAME                         T_SIZE
-------- ---------------------------- ---------- ---------- ------------------------------ ----------
TMC                               2.6       2597       1000 EX_ZQ_MIDDLE_ACCESS                     8
TMC                              2.31         30         13 EX_ZW_SRV_CONFIG                        0
TMC                               1.1         66         60 FDC_ROLES_CATALOG                      -1
TMC                               .35         21         60 FDC_ORGANTYPE_SUBSYSTEM                -1
TMC                                .1          6         58 FDC_USER_DEV_UPLOAD                     0
TMC                              3.05    1149260     377166 JG_TBL_FDC_EST_REGISTE               2947
TMC                                 0          0       1522 JG_TBL_JSYDGH                          12
TMC                                 0          0       2410 JG_TBL_LAND_CONTRACT                   19
TMC                              4.83     713497     147670 FDC_YS_CONTRACT_APPENDIX             1154
TMC                              1.94       3646       1882 SIREA_REPORT_3                         15
TMC                              2.56        625        244 DZZZ_FDC_YS_PREPROJECT                  2
TMC                               .22       9703      44390 FDC_ORGAN_REPORT_DEV_USER             347
TMC                                 0          0         13 SYS_20185311110401376_TEMP              0
TMC                              1.57    1902326    1210229 REMC_WS_LOG_REQUEST                  9455

# 查看表上边的索引
SQL> select index_name, status from dba_indexes where owner = 'TMC' and table_name = 'JG_TBL_FDC_EST_REGISTE';
INDEX_NAME                     STATUS
------------------------------ --------
EST_REGISTE_PARCEL_NO          VALID
EST_REGISTE_PROJ_NO            VALID

SQL> select index_name, status from dba_indexes where owner = 'TMC' and table_name = 'FDC_YS_CONTRACT_APPENDIX';
INDEX_NAME                     STATUS
------------------------------ --------
SYS_IL0000060570C00006$$       VALID
SYS_IL0000060570C00020$$       VALID
FYCA_IX_FYC_ID                 VALID
FYCA_IX_YS_FYB_ID              VALID
SYS_IL0000060570C00026$$       VALID
FYCA_PK                        VALID

6 rows selected.

SQL> select index_name, status from dba_indexes where owner = 'TMC' and table_name = 'REMC_WS_LOG_REQUEST';
INDEX_NAME                     STATUS
------------------------------ --------
SYS_IL0000142741C00026$$       VALID
SYS_IL0000142741C00027$$       VALID
SYS_IL0000142741C00028$$       VALID


# 查看FDCYS用户高水位线
SELECT D.OWNER,
       ROUND(D.NUM_ROWS / D.BLOCKS, 2),
       D.NUM_ROWS,
       D.BLOCKS,
       D.TABLE_NAME,
 ROUND((d.BLOCKS*8-D.INITIAL_EXTENT/1024)/1024)  t_size
  FROM DBA_TABLES D
 WHERE D.BLOCKS > 10
   AND ROUND(D.NUM_ROWS / D.BLOCKS, 2) < 5
 AND d.OWNER = 'FDCYS' ;

OWNER                          ROUND(D.NUM_ROWS/D.BLOCKS,2)   NUM_ROWS     BLOCKS TABLE_NAME                         T_SIZE
------------------------------ ---------------------------- ---------- ---------- ------------------------------ ----------
FDCYS                                                     0          0     449636 SYS_20191171126389483_TEMP           3513

# 查看表上的索引
SQL> select index_name,status from dba_indexes where owner = 'FDCYS' and table_name = 'SYS_20191171126389483_TEMP';

INDEX_NAME                     STATUS
------------------------------ --------
SYS_C0060562                   VALID

3.2.1. 收缩指定表的高水位线

# TMC用户收缩高水位线
alter table TMC.JG_TBL_FDC_EST_REGISTE enable row movement;
alter table TMC.JG_TBL_FDC_EST_REGISTE shrink space;
alter index TMC.EST_REGISTE_PARCEL_NO rebuild;
alter index TMC.EST_REGISTE_PROJ_NO rebuild;
alter table TMC.JG_TBL_FDC_EST_REGISTE disable row movement;

alter table TMC.FDC_YS_CONTRACT_APPENDIX enable row movement;
alter table TMC.FDC_YS_CONTRACT_APPENDIX shrink space;
alter index TMC.FYCA_IX_FYC_ID rebuild parallel 4 nologging;
alter index TMC.FYCA_IX_YS_FYB_ID rebuild parallel 4 nologging;
alter index TMC.FYCA_PK rebuild parallel 4 nologging;
alter index TMC.FYCA_IX_FYC_ID parallel 1 ;
alter index TMC.FYCA_IX_YS_FYB_ID parallel 1 ;
alter index TMC.FYCA_PK parallel 1 ;
alter index TMC.FDC_YS_CONTRACT_APPENDIX disable row movement;

alter table TMC.REMC_WS_LOG_REQUEST enable row movement;
alter table TMC. REMC_WS_LOG_REQUEST shrink space;
alter table TMC.REMC_WS_LOG_REQUEST disable row movement;

# FDCYS用户收缩高水位线
alter table FDCYS.SYS_20191171126389483_TEMP enable row movement;
alter table FDCYS.SYS_20191171126389483_TEMP shrink space;
alter index SYS_C0060562 rebuild;
alter table FDCYS.SYS_20191171126389483_TEMP disable row movement;

3.2.2. 重新收集表的统计信息

exec dbms_stats.gather_table_stats('TMC','JG_TBL_FDC_EST_REGISTE',cascade=>true);
exec dbms_stats.gather_table_stats('TMC','FDC_YS_CONTRACT_APPENDIX',cascade=>true);
exec dbms_stats.gather_table_stats('TMC','REMC_WS_LOG_REQUEST',cascade=>true);
exec dbms_stats.gather_table_stats('FDCYS','SYS_20191171126389483_TEMP',cascade=>true);


如果是大表,建议使用如下语句进行统计信息收集
说明:需要替换用户名、表名、及分区名(如果是分区表) 
如果要单独分析表的某个分区,将 --granularity和--  partname=>'p200902', 这句注释去掉,并替换分区名 

begin 
  DBMS_STATS.GATHER_TABLE_STATS(ownname=>'NETFORCE', 
                                tabname=>'TBL_PROCESS_DRAFT', 
                                --granularity => 'PARTITION', 
                                --partname=>'POPERATIONPROCESS0102',   
                                estimate_percent=>1, 
                                method_opt=>'FOR ALL COLUMNS SIZE 1', 
                                no_invalidate=>false, 
                                cascade=>true, 
                                degree => 10);                        
end ; 
/ 

3.3. Resize 数据文件

# 查看最大可resize的数据文件大小
col name for a50
col resizecmd for a90
select a.file#,
a.name,
a.bytes / 1024 / 1024 CurrentMB,
ceil(HWM * a.block_size / 1024 / 1024) Resizeto,
(a.bytes - HWM * a.block_size) / 1024 / 1024 releaseMB,
'alter database datafile ''' || a.name || ''' resize ' ||
ceil(HWM * a.block_size / 1024 / 1024) || 'M;' ResizeCmd
from v$datafile a,
(select file_id, max(block_id + blocks - 1) HWM
from dba_extents
where tablespace_name = 'TS_DATA'
group by file_id) b
where a.file# = b.file_id(+)
and (a.bytes - HWM * a.block_size) > 0
order by 5;

FILE# NAME                              CURRENTMB   RESIZETO  RELEASEMB RESIZECMD
----- -------------------------------- ---------- ---------- ---------- -------------------------------------------------------------------------
    7 /Oradata/2nd_fdc/TS_DATA02.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA02.dbf' resize 30000M;
    9 /Oradata/2nd_fdc/TS_DATA04.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA04.dbf' resize 30000M;
    6 /Oradata/2nd_fdc/TS_DATA01.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA01.dbf' resize 30000M;
   41 /Oradata/2nd_fdc/TS_DATA29.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA29.dbf' resize 30000M;
   12 /Oradata/2nd_fdc/TS_DATA07.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA07.dbf' resize 30000M;
   61 /Oradata/2nd_fdc/TS_DATA45.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA45.dbf' resize 30000M;
   26 /Oradata/2nd_fdc/TS_DATA17.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA17.dbf' resize 30000M;
   31 /Oradata/2nd_fdc/TS_DATA22.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA22.dbf' resize 30000M;
   10 /Oradata/2nd_fdc/TS_DATA05.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA05.dbf' resize 30000M;
   19 /Oradata/2nd_fdc/TS_DATA12.dbf        32760      32760      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA12.dbf' resize 32760M;
   14 /Oradata/2nd_fdc/TS_DATA09.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA09.dbf' resize 30000M;
   13 /Oradata/2nd_fdc/TS_DATA08.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA08.dbf' resize 30000M;
   11 /Oradata/2nd_fdc/TS_DATA06.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA06.dbf' resize 30000M;
   83 /Oradata/2nd_fdc/TS_DATA65.dbf        20000      20000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA65.dbf' resize 20000M;
   20 /Oradata/2nd_fdc/TS_DATA13.dbf        32760      32760      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA13.dbf' resize 32760M;
   18 /Oradata/2nd_fdc/TS_DATA11.dbf        32760      32760      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA11.dbf' resize 32760M;
   24 /Oradata/2nd_fdc/TS_DATA15.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA15.dbf' resize 30000M;
   15 /Oradata/2nd_fdc/TS_DATA10.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA10.dbf' resize 30000M;
   49 /Oradata/2nd_fdc/TS_DATA36.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA36.dbf' resize 30000M;
   39 /Oradata/2nd_fdc/TS_DATA27.dbf        32722      32722      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA27.dbf' resize 32722M;
   25 /Oradata/2nd_fdc/TS_DATA16.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA16.dbf' resize 30000M;
    8 /Oradata/2nd_fdc/TS_DATA03.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA03.dbf' resize 30000M;
   30 /Oradata/2nd_fdc/TS_DATA21.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA21.dbf' resize 30000M;
   45 /Oradata/2nd_fdc/TS_DATA32.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA32.dbf' resize 30000M;
   29 /Oradata/2nd_fdc/TS_DATA20.dbf        30000      30000      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA20.dbf' resize 30000M;
   27 /Oradata/2nd_fdc/TS_DATA18.dbf        32760      32760      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA18.dbf' resize 32760M;
   28 /Oradata/2nd_fdc/TS_DATA19.dbf        32760      32760      .0625 alter database datafile '/Oradata/2nd_fdc/TS_DATA19.dbf' resize 32760M;
   35 /Oradata/2nd_fdc/TS_DATA23.dbf        30000      30000       .125 alter database datafile '/Oradata/2nd_fdc/TS_DATA23.dbf' resize 30000M;
   76 /Oradata/2nd_fdc/TS_DATA60.dbf        30000      30000       .125 alter database datafile '/Oradata/2nd_fdc/TS_DATA60.dbf' resize 30000M;
   74 /Oradata/2nd_fdc/TS_DATA58.dbf        30000      30000       .125 alter database datafile '/Oradata/2nd_fdc/TS_DATA58.dbf' resize 30000M;
   21 /Oradata/2nd_fdc/TS_DATA14.dbf        32760      32760       .125 alter database datafile '/Oradata/2nd_fdc/TS_DATA14.dbf' resize 32760M;
   50 /Oradata/2nd_fdc/TS_DATA37.dbf        30000      30000      .1875 alter database datafile '/Oradata/2nd_fdc/TS_DATA37.dbf' resize 30000M;
   40 /Oradata/2nd_fdc/TS_DATA28.dbf        30000      30000      .1875 alter database datafile '/Oradata/2nd_fdc/TS_DATA28.dbf' resize 30000M;
   44 /Oradata/2nd_fdc/TS_DATA31.dbf        30000      30000      .3125 alter database datafile '/Oradata/2nd_fdc/TS_DATA31.dbf' resize 30000M;
   58 /Oradata/2nd_fdc/TS_DATA43.dbf        30000      30000      .3125 alter database datafile '/Oradata/2nd_fdc/TS_DATA43.dbf' resize 30000M;
   43 /Oradata/2nd_fdc/TS_DATA30.dbf        30000      30000      .3125 alter database datafile '/Oradata/2nd_fdc/TS_DATA30.dbf' resize 30000M;
   67 /Oradata/2nd_fdc/TS_DATA51.dbf        30000      30000      .3125 alter database datafile '/Oradata/2nd_fdc/TS_DATA51.dbf' resize 30000M;
   82 /Oradata/2nd_fdc/TS_DATA64.dbf        30000      30000      .5625 alter database datafile '/Oradata/2nd_fdc/TS_DATA64.dbf' resize 30000M;
   56 /Oradata/2nd_fdc/TS_DATA42.dbf        20000      20000       .625 alter database datafile '/Oradata/2nd_fdc/TS_DATA42.dbf' resize 20000M;
   85 /Oradata/2nd_fdc/TS_DATA67.dbf        30000      29973     27.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA67.dbf' resize 29973M;
   84 /Oradata/2nd_fdc/TS_DATA66.dbf        30000      29645    355.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA66.dbf' resize 29645M;
  102 /Oradata/2nd_fdc/TS_DATA74.dbf         5120       3580   1540.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA74.dbf' resize 3580M;
   90 /Oradata/2nd_fdc/TS_DATA70.dbf        30720      29121   1599.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA70.dbf' resize 29121M;
  103 /Oradata/2nd_fdc/TS_DATA75.dbf         5120       3422   1698.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA75.dbf' resize 3422M;
   91 /Oradata/2nd_fdc/TS_DATA71.dbf        30720      28993   1727.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA71.dbf' resize 28993M;
  104 /Oradata/2nd_fdc/TS_DATA76.dbf         5120       3295   1825.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA76.dbf' resize 3295M;
   88 /Oradata/2nd_fdc/TS_DATA69.dbf        29980      22035  7945.9375 alter database datafile '/Oradata/2nd_fdc/TS_DATA69.dbf' resize 22035M;
   86 /Oradata/2nd_fdc/TS_DATA68.dbf        29980      21958  8022.9375 alter database datafile '/Oradata/2nd_fdc/TS_DATA68.dbf' resize 21958M;
   92 /Oradata/2nd_fdc/TS_DATA72.dbf        30720      21246   9474.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA72.dbf' resize 21246M;
   93 /Oradata/2nd_fdc/TS_DATA73.dbf        30720      20626  10094.875 alter database datafile '/Oradata/2nd_fdc/TS_DATA73.dbf' resize 20626M;

4. 结论

本次表空间高水位线收缩动作共释放50G左右空间。
通过合理地收缩表空间高水位,不仅可以有效释放磁盘空间,还能优化数据库的存储结构,提升整体性能表现。在实际运维过程中,掌握Shrinking、Move、Rebuild等手段的适用场景与操作细节,能够帮助我们更高效地解决空间浪费问题。希望本文提供的实践操作和经验总结,能为广大DBA在日常维护中提供借鉴与参考。

数据库管理虽无银弹,但精益求精的每一步,终将让系统更加稳定、可靠、高效。
hhh6.jpg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2331800.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ESModule和CommonJS在Node中的区别

ESModule console.log(require);//>errorconsole.log(module);//>errorconsole.log(exports);//>errorconsole.log(__filename);//>errorconsole.log(__dirname);//>error全部报错commonjs console.log(require);console.log(module);console.log(exports);co…

力扣刷题-热题100题-第34题(c++、python)

23. 合并 K 个升序链表 - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/merge-k-sorted-lists/?envTypestudy-plan-v2&envIdtop-100-liked 顺序合并 合并两个有序链表作为子函数&#xff0c;创建一个空链表&#xff0c;然后对含有多个链表的数组进…

原生SSE实现AI智能问答+Vue3前端打字机流效果

实现流程&#xff1a; 1.用户点击按钮从右侧展开抽屉&#xff08;drawer&#xff09;&#xff0c;打开模拟对话框 2.用户输入问题&#xff0c;点击提问按钮&#xff0c;创建一个SSE实例请求后端数据&#xff0c;由于SSE是单向流&#xff0c;所以每提一个问题都需要先把之前的实…

LLC工作模态详解

1以半桥LLC谐振变换器为例&#xff0c;主开关Q1、Q2构成半桥结构&#xff0c;其驱动信号为固定占空比50%的互补信号&#xff0c;并且在上下桥臂之间应有死区时间。 谐振电感Ls、谐振电感Cs和变压器励磁电感Lm共同构成谐振槽路&#xff0c;具有两个谐振频率&#xff1a; 谐振电…

线代第三课:n阶行列式

引言 行标取自然排列 不同行不同列的3个元素相乘 列标取排列的所有可能 列标排列的逆序数的奇偶性决定符号&#xff0c;- n阶行列式 第一种&#xff1a;按行展开 (1) 行标取自然排列 (2) 列标取排列的所有可能 &#xff08;PS&#xff1a;可以理解为随意取&#xff09; (3) 从…

机器学习的一百个概念(10)假阳性率

前言 本文隶属于专栏《机器学习的一百个概念》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见[《机器学习的一百个概念》 ima 知识库 知识库广场搜索: 知识库创建人机器学习@Shockang机器学习数学基础@Shocka…

C++ Socket优化实战:提升网络应用的性能与效率

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家、CSDN平台优质创作者&#xff0c;高级开发工程师&#xff0c;数学专业&#xff0c;拥有高级工程师证书&#xff1b;擅长C/C、C#等开发语言&#xff0c;熟悉Java常用开发技术&#xff0c;能熟练应用常用数据库SQL server,Oracle…

STM32单片机入门学习——第30节: [9-6] FlyMcu串口下载STLINK Utility

写这个文章是用来学习的,记录一下我的学习过程。希望我能一直坚持下去,我只是一个小白,只是想好好学习,我知道这会很难&#xff0c;但我还是想去做&#xff01; 本文写于&#xff1a;2025.04.09 STM32开发板学习——第30节: [9-6] FlyMcu串口下载&STLINK Utility 前言开发…

亮相CMEF,美的医疗全维度打造智慧医疗新生态

当下&#xff0c;医疗科技革命的浪潮正汹涌而来&#xff0c;AI技术在中国医疗器械领域迅猛发展&#xff0c;释放出巨大的潜力。 4月8日&#xff0c;在第91届中国国际医疗器械博览会&#xff08;CMEF&#xff09;上&#xff0c;2025美的医疗年度新品发布暨中国脊梁守护计划启动…

数据库视图讲解(view)

一、为什么需要视图 二、视图的讲解 三、总结 一、为什么需要视图 视图一方面可以帮我们使用表的一部分而不是所有的表&#xff0c;另一方面也可以针对不同的用户制定不同的查询视图。 比如&#xff0c;针对一个公司的销售人员&#xff0c;我们只想给他看部分数据&#xff0c…

TQTT_KU5P开发板教程---文件的烧写与程序固化

文档功能介绍 本文档所描述的为文件的烧写固化&#xff0c;利用spi芯片将程序固化带芯片上&#xff0c;可以让开发板在重新上电时也可以跑程序。我们所使用的芯片型号为mt25qu256-spi-x1_x2_x4.本次实验采用的在led_shift项目的基础上将流水灯程序固化到flash芯片上&#xff0c…

进度管理__制订进度计划_资源平衡和资源平滑

本文讲解的资源平衡与资源平滑&#xff0c;是制订进度计划的工具与技术的第3项&#xff1a; 资源优化。 1. 资源平衡 资源平衡是为了在资源需求与资源供给之间取得平等&#xff0c; 根据资源制约因素对开始日期和完成日期进行调整的一种技术。 如果共享资源或关键资源只在特定…

【ISP】ISP pipeline(AI)

ISP Pipeline 全流程概览 ISP&#xff08;Image Signal Processing&#xff0c;图像信号处理&#xff09;流程通常从原始 Bayer 数据出发&#xff0c;经过一系列模块处理&#xff0c;逐步完成图像校正和增强&#xff0c;最终生成用于显示或编码的标准图像。常见处理模块包括&a…

RVOS-2.基于NS16550a ,为os添加终端交互功能。

2.1 实验目的 为os添加uart功能&#xff0c;通过串口实现开发板与PC交互。 2.1 硬件信息 QEMU虚拟SoC含有 虚拟NS16550A设备 。 不同的地址线组合&#xff08;A2、A1、A0&#xff09;对应的读写模式和寄存器如下所示&#xff1a; 2.2 NS16550a 的初始化 线路控制寄存器&#…

软件学报 区块链论文 截止2025年4月 录用汇总 附pdf下载

截止 2025年4月 软件学报 2024年 区块链论文 录用汇总 附pdf下载 1 Title: 基于多父链辅助工作量证明共识机制的后量子区块链系统 Authors: Key words: 区块链;后量子密码;共识机制;辅助工作量证明 Abstract: 随着量子计算机的发展,对于以传统椭圆曲线数字签名为基石的公…

【MySQL 数据库】增删查改操作CRUD(上)

&#x1f525;博客主页&#x1f525;&#xff1a;【 坊钰_CSDN博客 】 欢迎各位点赞&#x1f44d;评论✍收藏⭐ 目录 1. CRUD 简介 2. Create -- 新增 2.1 语法 2.2 练习 3. Retrieve -- 检索 3.1 Select -- 查询 3.1.1 全列查询 3.1.2 指定列查询 3.1.3 表达式查询 3.…

pycharm 有智能提示,但是没法自动导包,也就是alt+enter无效果

找到file->settings->editor->inspections 把python勾选上&#xff0c;原来不能用是因为只勾选了一部分。

Linux网络编程——TCP协议格式、可靠性分析

目录 一、前言 二、TCP协议格式 三、TCP的可靠性 TCP协议的确认应答机制 总结 四、TCP协议的缓冲区及流量控制 五、 TCP流量控制 六、TCP报文类型 标记位 一、前言 在上一篇文章中&#xff0c;我们重点介绍了UDP协议格式的一些内容。在本文中介绍的便是TCP协议格式的…

【深度学习】Downstream Model:预训练模型的下游应用与微调技术

Downstream Model&#xff1a;预训练模型的下游应用与微调技术 文章目录 Downstream Model&#xff1a;预训练模型的下游应用与微调技术1 什么是Downstream Model&#xff08;下游模型&#xff09;2 预训练模型与下游任务的关系3 微调技术与迁移学习微调的必要性高效迁移学习参…

C# ref out关键字 理解学习记录

ref 在传参是可以以指针的方式传递&#xff0c;而不是传参数的值 举例&#xff0c;函数返回void ,局部变量要传参后得到结果&#xff1a; ref传参前要实例化赋值&#xff0c;而函数体内不一定要赋值 out 传参前不一定要赋值&#xff0c;而函数体内一定要赋值 &#xff0c;与r…