您的位置:首页 > 数据库 > Oracle

Oracle - 表空间使用情况及相关字典

2018-01-15 15:33 309 查看
一、表空间的使用情况

    1、数据表空间

        查看数据表空间已经已分配磁盘的空间的使用情况

---------------------- 查询语句 ----------------------
SELECT
A.TABLESPACE_NAME, A.BYTES/1024/1024 "DISK_SIZE(MB)", (A.BYTES-B.BYTES)/1024/1024 "USED_SIZE(MB)",
B.BYTES/1024/1024 "FREE_SIZE(MB)", ROUND(((A.BYTES-B.BYTES)/A.BYTES)*100,2) "USED_RATE(%)"
FROM
(SELECT TABLESPACE_NAME,SUM(BYTES) BYTES FROM DBA_DATA_FILES GROUP BY TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME,SUM(BYTES) BYTES, MAX(BYTES) LARGEST FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) B
WHERE
A.TABLESPACE_NAME=B.TABLESPACE_NAME;

---------------------- 查询结果 ----------------------
TABLESPACE_NAME                DISK_SIZE(MB) USED_SIZE(MB) FREE_SIZE(MB) USED_RATE(%)
------------------------------ ------------- ------------- ------------- ------------
SYSTEM                                  9452      741.1875     8710.8125         7.84
AUDIT                                 204800        179401         25399         87.6
USERS                                  11024     3020.1875     8003.8125         27.4
UNDOTBS2                          94207.9844    1888.04688    92319.9375            2
SYSAUX                                  9802     1971.4375     7830.5625        20.11
UNDOTBS1                          94207.9844    15033.8594     79174.125        15.96
XLGDATA                           560127.969    540417.406    19710.5625        96.48


        查看数据表空间的所有数据文件占用的磁盘大小、是否自动扩展、扩展的最大值等信息
---------------------- 查询语句 ----------------------
SELECT
FILE_NAME, TABLESPACE_NAME, AUTOEXTENSIBLE, INCREMENT_BY,
BYTES/1024/1024 "DISK_SIZE(MB)", MAXBYTES/1024/1024 "MAX_SIZE(MB)"
FROM
DBA_DATA_FILES;

---------------------- 查询结果 ----------------------
TABLESPACE_NAME      FILE_NAME                                                AUT INCREMENT_BY DISK_SIZE(MB) MAX_SIZE(MB)
-------------------- -------------------------------------------------------- --- ------------ ------------- ------------
SYSTEM               /usr/oracle/oradata/MyOrclDb/system.266.894453801        YES         6400          9452   32767.9844
SYSAUX               /usr/oracle/oradata/MyOrclDb/sysaux.265.894453819        YES         6400          9802   32767.9844
UNDOTBS1             /usr/oracle/oradata/MyOrclDb/undotbs1.258.894453835      YES         6400    32767.9844   32767.9844
UNDOTBS2             /usr/oracle/oradata/MyOrclDb/undotbs2.271.894453849      YES         6400    32767.9844   32767.9844
USERS                /usr/oracle/oradata/MyOrclDb/users.270.894453851         YES         6400         10000   32767.9844
XLGDATA              /usr/oracle/oradata/MyOrclDb/xlgdata01.dbf               YES       131072    32767.9844   32767.9844
XLGDATA              /usr/oracle/oradata/MyOrclDb/xlgdata02.dbf               YES       131072    32767.9844   32767.9844
XLGDATA              /usr/oracle/oradata/MyOrclDb/xlgdata.259.898450067       NO             0         30720            0
XLGDATA              /usr/oracle/oradata/MyOrclDb/xlgdata.272.9092475         NO             0         30720            0
    2、临时表空间

        查看临时表空间已经已分配磁盘的空间的使用情况
---------------------- 查询语句 ----------------------
SELECT
TABLESPACE_NAME, TABLESPACE_SIZE/1024/1024 AS "TABLESPACE_SIZE(MB)",
ALLOCATED_SPACE/1024/1024 AS "ALLOCATED_SIZE(MB)", FREE_SPACE/1024/1024 AS "FREE_SIZE(MB)",
round(((TABLESPACE_SIZE - FREE_SPACE)/TABLESPACE_SIZE)*100,2) AS "USED_RATE(%)"
FROM
DBA_TEMP_FREE_SPACE;

---------------------- 查询结果 ----------------------
TABLESPACE_NAME                TABLESPACE_SIZE(MB) ALLOCATED_SIZE(MB) FREE_SIZE(MB) USED_RATE(%)
------------------------------ ------------------- ------------------ ------------- ------------
TEMP                                    94207.9844         94162.9844         90471         3.97
        查看TEMP表空间的数据文件个数,当前大小,是否自动扩展
---------------------- 查询语句 ----------------------
SELECT
TABLESPACE_NAME, FILE_NAME, BYTES/1024/1024 "CURR_SIZE(MB)", MAXBYTES/1024/1024 "MAX_SIZE(MB)",AUTOEXTENSIBLE
FROM
DBA_TEMP_FILES;

---------------------- 查询结果 ----------------------
TABLESPACE_NAME          FILE_NAME                                               CURR_SIZE(MB) MAX_SIZE(MB) AUT
------------------------ ------------------------------------------------------- ------------- ------------ ---
TEMP                     /usr/oracle/oradata/MyOrclDb/temp.257.894453839            32767.9844   32767.9844 YES
TEMP                     /usr/oracle/oradata/MyOrclDb/temp.288.909606971                 30720            0 NO
TEMP                     /usr/oracle/oradata/MyOrclDb/temp.289.909606981                 30720            0 NO
二、表空间相关的数据字典和动态视图

V$TABLESPACE                            -- 从控制文件得到的所有的表空间的名称和编号
V$DATAFILE                              -- 所有数据文件的信息,包括所属表空间和表空间号
V$TEMPFILE                              -- 所有临时文件的信息,包括所属表空间和表空间号
V$TEMP_EXTENT_MAP                       -- 本地管理的临时表空间中所有的范围信息
V$TEMP_EXTENT_POOL                      -- 由每个实例缓存和使用的临时表空间(本地管理的)的状态
V$TEMP_SPACE_HEADER                     -- 显示每个临时文件的已用/空闲空间
V$SORT_SEGMENT                          -- 给定实例中每排序段的信息。此视图只有当表空间为临时类型时才会更新
V$SORT_USER                             -- 用户使用的临时排序空间和临时的/永久的表空间
DBA_TABLESPACES, USER_TABLESPACES       -- 描述了所有(用户可存取的)表空间
DBA_SEGMENTS, USER_SEGMENTS             -- 在所有表空间内的段信息(用户可存取的)
DBA_EXTENTS, USER_EXTENTS               -- 在所有表空间内的数据盘区的信息(用户可存取的)
DBA_FREE_SPACE, USER_FREE_SPACE         -- 在所有的表空间内的空闲范围的信息(用户可存取的)
DBA_DATA_FILES                          -- 显示属于表空间的数据文件
DBA_TEMP_FILES                          -- 显示属于表空间的临时文件
DBA_USERS                               -- 所有用户默认的和临时表空间
DBA_TS_QUOTAS                           -- 所有的用户的表空间限额
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: