Oracle 表空间详细信息

Oracle 表空间详细信息,oracle,database-administration,Oracle,Database Administration,我对在数据库中查找有关表空间的某些信息感兴趣,但我不太确定从哪里开始。我被要求查找以下信息: 在报告中总结以下内容: 列出所有表空间,包括表空间名称、所有者、类型和使用的总字节数 按表空间列出使用情况统计信息、可用字节和片段 我在网上四处寻找,发现了这个: select tablespace_name from dba_tablespaces select tablespace_name from user_tablespaces SQL>SELECT TABLESPACE_NAME,E

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

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

我在网上四处寻找,发现了这个:

select tablespace_name from dba_tablespaces
select tablespace_name from user_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
这就是我目前所拥有的一切,但我不知道接下来该怎么办。 有人能指导我应该做什么来收集所需的信息吗


谢谢

我可以帮你做这些

  • 名称:dba_tablespaces.Tablespace_名称
  • 类型(永久、临时、撤消):dba_tablespaces.Contents
  • 大小:表空间的DBA\u Data\u Files.Bytes之和
  • 空闲字节:表空间的DBA\u Free\u Space.bytes之和
  • 使用的总字节数:大小-可用字节数
  • 片段:你是指片段吗?如果是这样,则计算DBA_段的行数 表空间
。。。但不是所有者;不知道怎么找到那个

下面是一个查询,用于获取名称、类型、大小、已用、可用和分段:

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

我可以帮你做这些

  • 名称:dba_tablespaces.Tablespace_名称
  • 类型(永久、临时、撤消):dba_tablespaces.Contents
  • 大小:表空间的DBA\u Data\u Files.Bytes之和
  • 空闲字节:表空间的DBA\u Free\u Space.bytes之和
  • 使用的总字节数:大小-可用字节数
  • 片段:你是指片段吗?如果是这样,则计算DBA_段的行数 表空间
。。。但不是所有者;不知道怎么找到那个

下面是一个查询,用于获取名称、类型、大小、已用、可用和分段:

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

您可以使用以下查询:

查询TS(
表空间
)信息

Dba\u表空间

select tablespace_name from dba_tablespaces
select tablespace_name from user_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\u可用空间

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
SQL>SELECT DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE

2 FROM DBA_USERS

3 WHERE USERNAME = ‘HR’;

DEFAULT_TABLESPACE  TEMPORARY_TABLESPACE

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

EXAMPLE                                TEMP
iii.
DBA_区段
用户_区段
–显示有关区段、区段大小、关联段和表空间的信息

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

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

iv.
DBA\u用户

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
SQL>SELECT DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE

2 FROM DBA_USERS

3 WHERE USERNAME = ‘HR’;

DEFAULT_TABLESPACE  TEMPORARY_TABLESPACE

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

EXAMPLE                                TEMP
在此处阅读有关oracle表空间和oracle表空间管理的所有信息:


您可以使用以下查询:

查询TS(
表空间
)信息

Dba\u表空间

select tablespace_name from dba_tablespaces
select tablespace_name from user_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\u可用空间

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
SQL>SELECT DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE

2 FROM DBA_USERS

3 WHERE USERNAME = ‘HR’;

DEFAULT_TABLESPACE  TEMPORARY_TABLESPACE

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

EXAMPLE                                TEMP
iii.
DBA_区段
用户_区段
–显示有关区段、区段大小、关联段和表空间的信息

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

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

iv.
DBA\u用户

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
SQL>SELECT DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE

2 FROM DBA_USERS

3 WHERE USERNAME = ‘HR’;

DEFAULT_TABLESPACE  TEMPORARY_TABLESPACE

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

EXAMPLE                                TEMP
在此处阅读有关oracle表空间和oracle表空间管理的所有信息:



在DBA上更好地询问这一点,为什么同时标记sql server和Oracle?因为我使用的是Oracle db…?标记
sql server
仅适用于MS sql server。在DBA上更好地询问这一点,为什么同时标记sql server和Oracle?因为我使用的是Oracle db…?标记
sql server
仅适用于MS sql server。谢谢,我将尝试此代码。关于表空间的类型,我只知道有临时表空间和常规表空间(?)不能100%确定临时表空间是否会被视为不同的类型。下面是不同类型表空间的列表:好的,那就是DBA_tablespaces.Contents列。根据OracleDBA_表空间文档,它将是永久的、临时的或撤消的。我将把它添加到上面的查询中。非常感谢:顺便问一下,SYS帐户不是所有表空间的所有者吗?顺便问一下,我如何获得使用统计数据?谢谢,我将尝试这段代码。关于表空间的类型,我只知道有临时表空间和常规表空间(?)不能100%确定临时表空间是否会被视为不同的类型。下面是不同类型表空间的列表:好的,那就是DBA_tablespaces.Contents列。根据OracleDBA_表空间文档,它将是永久的、临时的或撤消的。我将把它添加到上面的查询中。非常感谢:顺便问一下,SYS帐户不是所有表空间的所有者吗?顺便问一下,我如何获得使用统计数据?