oracle表空间临时表空间信息查询

这两天由于工作原因,一直跟oracle数据库打交道,踩了很多坑,现在写一些自己的感想,与大家分享,有不正确的地方,欢迎指正!

1、查询表空间信息

select   *   from   dba_tablespaces

2、查看用户和表空间的关系

select username,default_tablespace from user_users;

3、查询表空间大小,剩余量,利用率,包含临时表空间

SELECT
    *
FROM
    (
        SELECT
            A .tablespace_name,
            TO_CHAR (
                A .bytes / 1024 / 1024,
                '99,999.999'
            ) total_bytes,
            TO_CHAR (
                b.bytes / 1024 / 1024,
                '99,999.999'
            ) free_bytes,
            TO_CHAR (
                A .bytes / 1024 / 1024 - b.bytes / 1024 / 1024,
                '99,999.999'
            ) use_bytes,
            TO_CHAR (
                (1 - b.bytes / A .bytes) * 100,
                '99.99'
            ) || '%' USE
        FROM
            (
                SELECT
                    tablespace_name,
                    SUM (bytes) bytes
                FROM
                    dba_data_files
                GROUP BY
                    tablespace_name
            ) A,
            (
                SELECT
                    tablespace_name,
                    SUM (bytes) bytes
                FROM
                    dba_free_space
                GROUP BY
                    tablespace_name
            ) b
        WHERE
            A .tablespace_name = b.tablespace_name
        UNION ALL
            SELECT
                c.tablespace_name,
                TO_CHAR (
                    c.bytes / 1024 / 1024,
                    '99,999.999'
                ) total_bytes,
                TO_CHAR (
                    (c.bytes - D .bytes_used) / 1024 / 1024,
                    '99,999.999'
                ) free_bytes,
                TO_CHAR (
                    D .bytes_used / 1024 / 1024,
                    '99,999.999'
                ) use_bytes,
                TO_CHAR (
                    D .bytes_used * 100 / c.bytes,
                    '99.99'
                ) || '%' USE
            FROM
                (
                    SELECT
                        tablespace_name,
                        SUM (bytes) bytes
                    FROM
                        dba_temp_files
                    GROUP BY
                        tablespace_name
                ) c,
                (
                    SELECT
                        tablespace_name,
                        SUM (bytes_cached) bytes_used
                    FROM
                        v$temp_extent_pool
                    GROUP BY
                        tablespace_name
                ) D
            WHERE
                c.tablespace_name = D .tablespace_name
    )

4、扩展临时表空间容量

alter database tempfile 'tempFilePath' resize 2048M;

5、扩展表空间容量

alter database datafile 'filePath' resize 4000m

6、查询表空间文件路径,包含临时表空间

SELECT TABLESPACE_NAME, FILE_ID, FILE_NAME, BYTES/1024/1024 AS "BYTES(M)"
  FROM DBA_DATA_FILES
SELECT TABLESPACE_NAME, FILE_ID, FILE_NAME, BYTES/1024/1024 AS "SPACE(M)"
  FROM DBA_TEMP_FILES

7、查询表空间所在表大小情况

Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值