游客发表

临时表空间用于 Oracle 中的排序操作。它也用于连接操作。检查间基本上,表空它是检查间临时存储,临时对象是表空在这里创建的。全局临时表也在这个表空间中创建。检查间这是表空一个非常重要的表空间,如果管理不当,检查间可能会出现问题。表空让我们看看临时表空间管理的检查间各种查询。
这是创建临时表空间的云服务器提供商 SQL。
复制--单个临时文件CREATE TEMPORARY TABLESPACE TEMP TEMPFILE /u01/oracle/TEST/oradata/temp_1.dbf SIZE 1000M;--多个临时文件CREATETABLESPACE TEMP TEMPFILE
/u01/oracle/TEST/oradata/temp_1.dbf SIZE 1000M
/u01/oracle/TEST/oradata/temp_2.dbf SIZE 1000M
;--使用 ASM CREATE TEMPORARY TABLESPACE TEMP TEMPFILE +DATA SIZE 1000M;1.2.3.4.5.6.7.8.9.Oracle 数据库可以有多个临时表空间。检查间
复制select tablespace_name,status,contents from dba_tablespaces where contents=TEMPORARY;1.我们可以使用以下查询选择每个表空间中的文件。
复制select file_name, tablespace_name, bytes fromdba_temp_files
或
select a.name,b.name, a.bytes from v$tempfile a, v$tablespace b where a.ts#=b.ts#1.2.3.这是有关如何在 oracle 中检查以 GB 为单位的临时表空间大小的查询。
复制select tablespace_name,sum(bytes)/1024/1024/1024 temp_gb
from dba_temp_files group by tablespace_name;
or
select b.name, sum(a.bytes)/1024/1024/1024 from v$tempfile a, v$tablespace b where a.ts#=b.ts# group by b.name;1.2.3.4.,
dtf.bytes/1024/1024/1024 total_GB,
sum(nvl(tsh.bytes_used,0))/1024/1024/1024 used_GB,
sum(nvl(tsh.bytes_free,0))/1024/1024/1024 free_GB,
(1-sum(nvl(tsh.bytes_free,0))/dtf.bytes)*100 pct,
from v$temp_space_header tsh,
(select tablespace_name, sum(bytes) bytesfrom dba_temp_filesgroup by tablespace_name) dtfwhere dtf.tablespace_name = tsh.tablespace_name(+)
group by tsh.tablespace_name, dtf.bytes/1024, dtf.bytesorder by 1/1.2.3.4.5.6.7.8.9.10.11.12.13.在 11g 中,引入了一个新视图 dba_temp_free_space,我们也可以使用它进行查询。
复制SELECT * FROM dba_temp_free_space;1.max_sort_blocks
from gv$sort_segment;select inst_id, tablespace_name, blocks_cached,blocks_used
from gv$temp_extent_pool;select inst_id,tablespace_name, blocks_used,blocks_free
from gv$temp_space_header;select inst_id,free_requests,freed_extents
from gv$sort_segment;1.2.3.4.5.6.7.8.9.tablespace
, a.osuser, a.username, a.sid, to_char(logon_time,MM/DD/YY HH24:MI)logon_time
from v$session a,v$sort_usage b
where a.saddr = b.session_addr;1.2.3.4.5.6.7.8.9.10.11.12.13.14.v$session s、v$sort_usage u
WHERE s.saddr=u。 session_addr
ORDER BY u.tablespace, u.segfile#, u.segblk#, u.blocks;1.2.3.4.v$sqlarea c
WHERE a.saddr = b .session_addrAND c.address= a.sql_addressAND c.hash_value = a.sql_hash_valueORDER BY b.tablespace, b.blocks;1.2.3.4.5.6.col status format a11
col program format a20 trunc
col machine format a17 trunc
col action format a39
col module format a39
col blocks heading "TEMP BLOCKS"SELECT b.blocks, s.inst_id, s.sid, s.status,s.action,s.program,s.machine,s.moduleFROM gv$session s,gv$sort_usage b
WHERE s.saddr = b.session_addrand s.inst_id = b.inst_idand b.blocks > 100000order by b.blocks desc;1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.我们可以通过扩展现有文件或添加新的临时文件来增加临时表空间。
复制alter database tempfile +DATA/test/tempfile01.dbf resize 10000m ;oralter tablespace TEMP add tempfile +DATA/test/tempfile02.dbf resize 10000m ;1.2.3.无法从普通表空间中删除数据文件,但可以从临时表空间中删除临时文件。这是sql
复制ALTER DATABASE TEMPFILE <temp file> DROP INCLUDING DATAFILES;1.随机阅读
热门排行
友情链接