[译] Oracle Database 21c 中的空间管理增强功能

Posted Lucifer三思而后行

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[译] Oracle Database 21c 中的空间管理增强功能相关的知识,希望对你有一定的参考价值。

原文地址:https://oracle-base.com/articles/21c/space-management-enhancements-21c
原文作者:Tim Hall

本文介绍 Oracle 数据库 21c 中的空间管理增强功能。

目录

SecureFiles 收缩

在以前的版本中,我们只能通过移动 lob 来释放 lob 的空间,这对于大型 lob 段可能需要相当长的时间。

alter table tab1 move lob(lob_column_name) store as (tablespace new_ts);

在 Oracle 21c 中,我们可以在不影响访问的情况下对日志段进行碎片整理。这会释放未使用的空间,而不会产生完全移动 LOB 段的开销。

收缩可以针对特定列的 lob 段执行,也可以作为表级联操作的一部分执行:

alter table t1 modify lob (colb_column1) (shrink space);
alter table t1 shrink space cascade;

级联操作在以前的版本中有效,但 LOB 段未包含在级联中。

V$SECUREFILE_SHRINK 视图包含用于段的收缩操作的行。它在操作期间被更新,如果对同一段请求另一个收缩操作,它会被覆盖。

临时表空间自动收缩

顾名思义,Automatic Temporary Tablespace Shrink 特性将缩小临时表空间的大小以释放空间。如果需要更多,数据库可以先发制人地增加临时表空间。文档将此称为临时表空间大小自动调整。这允许我们让临时表空间根据需要扩展和收缩,而不会永久丢失磁盘空间。

在撰写本文时,文档仅限于新功能手册 此处,不过只是说明了功能,并没有使用手册或日志记录的详细信息。

感谢 Roger MacNicol 指出 V$SYSSTAT 视图中的相关统计数据:

column name format a40

select con_id,
       name,
       value
from   v$sysstat
where  name like '%TBS%';

    CON_ID NAME                                          VALUE
---------- ---------------------------------------- ----------
         0 TBS Extension: tasks created                      0
         0 TBS Extension: tasks executed                     0
         0 TBS Extension: files extended                     0
         0 TBS Extension: bytes extended                     0
         0 TBS Shrink: tasks created                         0
         0 TBS Shrink: tasks executed                        0

SQL>

此功能首次在 Oracle 19c 自治数据库中引入,但从 Oracle 21c 开始,它可用于企业版安装。请参阅 此处 的许可手册。

撤消表空间自动收缩

顾名思义,Automatic Undo Tablespace Shrink 功能将缩小 undo 表空间的大小以释放空间。过期的撤消段将被删除,如果可能,数据文件会被缩小。这允许我们让撤消表空间根据需要扩展和收缩,而不会永久丢失磁盘空间。

在撰写本文时,文档仅限于新功能手册 此处,它只是说它存在,没有使用控制或日志记录的详细信息。

感谢 Roger MacNicol 指出 V$SYSSTAT 视图中的相关统计数据:

column name format a40

select con_id,
       name,
       value
from   v$sysstat
where  name like '%TBS%';

    CON_ID NAME                                          VALUE
---------- ---------------------------------------- ----------
         0 TBS Extension: tasks created                      0
         0 TBS Extension: tasks executed                     0
         0 TBS Extension: files extended                     0
         0 TBS Extension: bytes extended                     0
         0 TBS Shrink: tasks created                         0
         0 TBS Shrink: tasks executed                        0

SQL>

根据许可手册 此处,此功能在企业版中可用。

此功能首次在 Oracle 19c 自治数据库中引入,但从 Oracle 21c 开始,它可用于企业版安装。请参阅 此处 的许可手册。

以上是关于[译] Oracle Database 21c 中的空间管理增强功能的主要内容,如果未能解决你的问题,请参考以下文章

[译] Data Guard:Oracle Database 21c 中的 PREPARE DATABASE FOR DATA GUARD 命令

[译] Oracle Database 21c 中的数据泵(expdpimpdp)增强功能

Oracle LiveLabs实验:Install Oracle Database 21c

Oracle Database 21c 分析函数增强

Oracle Database 21c 分析函数增强

Oracle database 21c 新特性:密码逐步切换策略