今天就跟大家聊聊有关Oracle 11g 新特性的临时表空间收缩是怎么样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
Oracle 11g 新特性——临时表空间收缩
从11g开始,可以使用ALTER TABLESPACE tablespace_name SHRINK SPACE 命令收缩临时表空间,也可以使用 ALTER TABLESPACE tablespace_name SHRINK TEMPFILE命令收缩临时文件,上面命令,可使用可选的KEEP子句来指定表空间或临时文件的下限。
11g新增视图:DBA_TEMP_FREE_SPACE
该视图用来查看表空间级别的临时表空间使用率信息。
列名 说明
TABLESPACE_NAME 表空间名称
TABLESPACE_SIZE 表空间总大小(以字节为单位)
ALLOCATED_SPACE 已分配表空间(以字节为单位),包括当前以分配并在使用中的和当前以分配并可重用的空间。
FREE_SPACE 总剩余可用空间(以字节为单位),包括当前以分配但可以重用的以及未分配的空间。
SQL> select * from dba_temp_free_space;
TABLESPACE_NAME TABLESPACE_SIZE ALLOCATED_SPACE FREE_SPACE
---------------- --------------- --------------- ----------
TEMP 135266304 31457280 133169152
根据DBA_TEMP_FREE_SPACE提供的信息,就可以使用ALTER TABLESPACE 命令对临时表空间进行在线收缩。
SQL> alter tablespace temp shrink space keep 100M;
Tablespace altered.
SQL> select * from dba_temp_free_space;
TABLESPACE_NAME TABLESPACE_SIZE ALLOCATED_SPACE FREE_SPACE
------------------------------ --------------- --------------- ----------
TEMP 105906176 2097152 103809024
或者是对某个临时文件进行收缩:
SQL> col file_name format a50
SQL> select file_name,bytes from dba_temp_files;
FILE_NAME BYTES
-------------------------------------------------- ----------
/u01/app/oracle/oradata/ora11g/temp01.dbf 2088960
/u01/app/oracle/oradata/ora11g/temp02.dbf 103817216
SQL> alter tablespace temp shrink tempfile '/u01/app/oracle/oradata/ora11g/temp02.dbf' keep 60M;
Tablespace altered.
SQL> select * from dba_temp_free_space;
TABLESPACE_NAME TABLESPACE_SIZE ALLOCATED_SPACE FREE_SPACE
------------------------------ --------------- --------------- ----------
TEMP 66043904 3129344 63963136
看完上述内容,你们对Oracle 11g 新特性的临时表空间收缩是怎么样的有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。