1

我有兴趣在我的数据库中查找有关表空间的某些信息,但我不太确定从哪里开始。我被要求找到以下信息:

在报告中总结如下:列出所有表空间,包括表空间名称、所有者、类型和表空间使用的总字节数,列出使用情况统计信息、空闲字节和碎片

我在网上环顾四周,发现了这个:

select tablespace_name from dba_tablespaces
select tablespace_name from user_tablespaces

这就是我目前所拥有的一切,但我不知道从那里去哪里。有人可以指导我完成我应该做些什么来收集所需的信息吗?

谢谢!

4

2 回答 2

1

这些我可以帮忙...

  • 名称:dba_tablespaces.Tablespace_Name
  • 类型(永久、临时、撤消):dba_tablespaces.Contents
  • 大小:表空间的总和 DBA_Data_Files.Bytes
  • 空闲字节:表空间的总和 DBA_Free_Space.Bytes
  • 使用的总字节数:大小 - 空闲字节
  • 片段:你是说片段吗?如果是这样,计算表空间的 DBA_Segments 行

...但不是所有者;不知道如何找到它。

这是一个获取名称、类型、大小、已使用、空闲和段的查询:

WITH
  ts AS (
    SELECT Tablespace_Name, SUM(Bytes/1024) AS TotSize
    FROM DBA_Data_Files
    GROUP BY Tablespace_Name),
  tx AS (SELECT Tablespace_Name, COUNT(*) AS Segments
    FROM DBA_Segments
    GROUP BY Tablespace_Name),
  tf AS (SELECT Tablespace_Name, SUM(Bytes/1024) AS TotFree
    FROM DBA_Free_Space
    GROUP BY Tablespace_Name)
SELECT
  Tablespace_Name,
  DBA_Tablespaces.Contents,
  ts.TotSize,
  ts.TotSize - tf.TotFree AS TotUsed,
  tf.TotFree,
  tx.Segments
FROM DBA_Tablespaces
INNER JOIN ts USING (Tablespace_Name)
INNER JOIN tx USING (Tablespace_Name)
INNER JOIN tf USING (Tablespace_Name)
ORDER BY Tablespace_Name
于 2013-02-22T04:10:09.050 回答
0

您可以使用以下查询:

查询TS( TABLESPACE)信息

Dba_tablespaces

SQL>SELECT TABLESPACE_NAME,EXTENT_MANAGEMENT,

2         ALLOCATION_TYPE,CONTENTS,

3         SEGMENT_SPACE_MANAGEMENT

4         FROM DBA_TABLESPACES;

TABLESPACE_NAME EXTENT_MAN ALLOCATIO CONTENTS  SEGMEN

————— ———- ——— ——–  ——

SYSTEM      DICTIONARY   USER       PERMANENT MANUAL

UNDOTBS     LOCAL        SYSTEM    UNDO      MANUAL

TEMP        LOCAL        SYSTEM    TEMPORARY MANUAL

TOOL        LOCAL        SYSTEM    PERMANENT MANUAL

USERS       LOCAL        SYSTEM    PERMANENT MANUAL

APP_DATA    DICTIONARY   USER      PERMANENT MANUAL

APP_INDEX   LOCAL        SYSTEM    PERMANENT AUTO

ii.DBA_FREE_SPACE

SQL>SELECT TABLESPACE_NAME,SUM(BYTES)FREE_SPACE

2 FROM DBA_FREE_SPACE

3 GROUP BY TABLESPACE_NAME;

TABLESPACE_NAME  FREE_SPACE

————————— ———

APP_DATA                      10481664

APP_INDEX                    10223616

SYSTEM                            88281088

UNDOTBS                         208338944

USERS                                24051712

iii. DBA_EXTENTS,USER_EXTENTS – 显示有关范围、范围大小、关联段和表空间的信息。

DBA_DATA_FILES– 显示属于表空间的数据文件

DBA_TEMP_FILES– 显示属于本地管理的临时管理表空间的临时文件。

iv.DBA_USERS

SQL>SELECT DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE

2 FROM DBA_USERS

3 WHERE USERNAME = ‘HR’;

DEFAULT_TABLESPACE  TEMPORARY_TABLESPACE

——————————- ——————–

EXAMPLE                                TEMP

在此处阅读有关 oracle 表空间和 oracle 表空间管理的所有信息:http: //www.techienawa.com/logical-structure/oracle-tablespace/
http://www.techienawa.com/logical-structure/tablespace-oracle/

于 2014-01-21T10:21:11.503 回答