1、查看临时表空间的使用情况
- 使用以下SQL查询可以查看临时表空间的使用情况:
SELECT tablespace_name, file_name, ROUND(bytes / POWER(1024, 3), 2) AS size_gb, blocks FROM dba_temp_files;
2、检查哪些SQL语句在使用临时表空间
- 使用以下SQL查询可以查看哪些SQL语句在使用临时表空间:
SELECT s.username, s.sid, s.serial#, u.tablespace, u.blocks * TO_NUMBER(p.value) / 1024 AS mb_used, s.sql_id, sql.sql_text FROM v$session s JOIN v$tempseg_usage u ON s.saddr = u.session_addr JOIN v$sql sql ON s.sql_id = sql.sql_id JOIN v$parameter p ON p.name = 'db_block_size' ORDER BY mb_used DESC;
查看表空间大小、
SELECT tablespace_name,
SUM(bytes) / 1024 / 1024 / 1024 AS "总大小(GB)",
SUM(bytes) / 1024 / 1024 / 1024 - SUM(free_space) / 1024 / 1024 / 1024 AS "已用大小(GB)",
SUM(free_space) / 1024 / 1024 / 1024 AS "剩余大小(GB)"
FROM (
SELECT tablespace_name, bytes, 0 AS free_space
FROM dba_data_files
UNION ALL
SELECT tablespace_name, 0 AS bytes, bytes AS free_space
FROM dba_free_space
)
GROUP BY tablespace_name;
查看表空间具体占用
SELECT segment_name AS "对象名",
segment_type AS "对象类型",
SUM(bytes) / 1024 / 1024 / 1024 AS "占用空间(GB)"
FROM dba_segments
WHERE tablespace_name = 'TTNAME'
GROUP BY segment_name, segment_type
ORDER BY "占用空间(GB)" DESC;
3、扩容
3.1、扩容当前文件
-
这种扩容是在当前大小下扩容,如果当前表空间为50G,按照下面这个语句,那么本次扩容为50G,扩容后表空间为100G。
ALTER DATABASE DATAFILE '/data/KE/sysaux01.dbf' RESIZE 100G;3.2、新增文件扩容
-
新增大小
###新增文件,并扩容10G,表空间时间大小=原空间大小+10G ALTER TABLESPACE SYSAUX ADD DATAFILE '/data/KE/sysaux02.dbf' SIZE 10G; ##使用`AUTOEXTEND ON NEXT 1024M`,表示在数据文件满时会自动扩展,并且每次扩展时增加1024MB(1GB)的空间。 ALTER TABLESPACE SYSAUX ADD DATAFILE '/data/KE/sysaux02.dbf' SIZE 10G AUTOEXTEND ON NEXT 1024M;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




