我的数据库的大小急剧增加。为什么?

kup*_*upa 5 oracle database-size

我发现我的数据库,特别是USERS表空间的大小急剧增加。

我如何才能找到对位于此表空间中的对象执行的 DML 操作?

Wou*_*ter 5

下面的查询将向您显示数据库中的架构、表空间和对象及其各自大小的概述。

- 更改组以降低详细程度(您可能希望首先查看大小是否由表、索引或其他对象引起)
- 添加 where 子句以仅列出您要调查的架构/表空间/对象类型.

select 
  owner SCHEMA, 
  tablespace_name TABLESPACE, 
  segment_type OBJECT_TYPE, 
  segment_name OBJECT_NAME,
  round((sum(bytes)/1024/1024), 3) MB
from dba_segments
group by owner, tablespace_name, segment_type, segment_name
order by owner, tablespace_name, MB desc;
Run Code Online (Sandbox Code Playgroud)

它没有向您展示是什么 DML 导致了它,但它已经向您展示了是什么对象导致了它。然后,您可以在 Enterprise Manager 中查看查询历史记录,以查找适用于这些有问题的对象的查询。

在企业管理器中,转到性能选项卡,然后在底部选择“搜索 SQL”。然后使用例如“SQL 文本”中的大表搜索查询。像这样,例如:%large_table_name%

祝你好运!