ora-01652 无法通过128 (在表空间 TEMP中)扩展temp段

摘要:
调整文件大小如下例子,需要将临时数据文件从128M大小调整为256MSQL˃alterdatabasetempfile'/home/oradata/powerdes/temp02.dbf'resize256M;Databasealtered.SQL˃文件脱机联机--脱机alterdatabasetempfile'/home/oradata/powerdes/temp02.dbf'offline;--联机alterdatabasetempfile'/home/oradata/powerdes/temp02.dbf'online;收缩临时表空间排序等操作使用的临时段,使用完成后会被标记为空闲,表示可以重用,占用的空间不会立即释放,有时候临时表空间会变得非常大,此时可以通过收缩临时表空间来释放没有使用的空间。收缩临时表空间是ORACLE11g新增的功能。

--查看临时表空间使用状况

select * from(
Selecta.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 (selecttablespace_name,
sum(bytes) bytes
fromdba_data_files
group bytablespace_name) a,
(selecttablespace_name,
sum(bytes) bytes
fromdba_free_space
group bytablespace_name) b
where a.tablespace_name =b.tablespace_name
union all
selectc.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 bytablespace_name) c,
(select tablespace_name,sum(bytes_cached) bytes_used
from v$temp_extent_pool group bytablespace_name) d
where c.tablespace_name =d.tablespace_name
)
order by tablespace_name

--查看表空间是否允许自动扩容,若不允许,且使用率过高,则需新增表空间文件

select d.file_name,d.tablespace_name,d.autoextensible from dba_data_files d

--查询临时表空间文件

select d.file_name,d.tablespace_name,d.autoextensible from dba_temp_files d;

--新增表空间临时文件

ALTER TABLESPACE TEMP
ADD TEMPFILE '/home/oracle/app/oradata/ora/temp11.dbf'SIZE 4G
AUTOEXTEND ON
NEXT 128M;

删除数据文件

例如,我想删除临时表空间下的某个文件,那么我们有两种方式删除临时表空间的数据文件。

方法1:

SQL>alter tablespacetempdroptempfile'/home/oradata/powerdes/temp03.dbf';

Tablespacealtered.

SQL>

#这个方法会删除物理文件

[oracle@pldb1 ~]$ ll /home/oradata/powerdes/temp03.dbf

ls: cannot access /home/oradata/powerdes/temp03.dbf: No such file or directory

[oracle@pldb1 ~]$

方法2:

SQL>alter database tempfile '/home/oradata/powerdes/temp04.dbf' drop including datafiles;

Databasealtered.

SQL>

注意:删除临时表空间的临时数据文件时,不需要指定INCLUDING DATAFILES 选项也会真正删除物理文件,否则需要手工删除物理文件。

调整文件大小

如下例子,需要将临时数据文件从128M大小调整为256M

SQL>alter database tempfile '/home/oradata/powerdes/temp02.dbf' resize 256M;

Databasealtered.

SQL>

文件脱机联机

--脱机

alterdatabasetempfile'/home/oradata/powerdes/temp02.dbf'offline;

--联机

alterdatabasetempfile'/home/oradata/powerdes/temp02.dbf'online;

收缩临时表空间

排序等操作使用的临时段,使用完成后会被标记为空闲,表示可以重用,占用的空间不会立即释放,有时候临时表空间会变得非常大,此时可以通过收缩临时表空间来释放没有使用的空间。收缩临时表空间是ORACLE 11g新增的功能。

SQL>ALTERTABLESPACETEMPSHRINKSPACEKEEP8G;

SQL>ALTERTABLESPACETEMPSHRINKTEMPFILE'/home/oradata/powerdes/temp05.dbf'

其他关于临时表空间的操作参见

http://blog.csdn.net/mchdba/article/details/51685173

免责声明:文章转载自《ora-01652 无法通过128 (在表空间 TEMP中)扩展temp段》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇从IEEE754标准谈C语言浮点数据类型甘超波:NLP平衡轮圈下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Oracle11g温习-第十二章:tables

2013年4月27日 星期六 10:44 1、表的功能 存储、管理数据的基本单元(二维表:由行和列组成) 2、表的类型 1)普通表:【heap table(堆表) :数据存储时,无序的,对它的访问采用全表扫描】。 2)分区表:【(>2G) 对大表进行优化(Range Partitioning,List PartitioningHash P...

MS SQL SERVER 2008 使用OBJECT_ID判断临时表是否存在

MS SQL SERVER 2008 使用OBJECT_ID判断临时表是否存在 我们在写sql 脚本的时候经常会用到临时表,有时间也需要根据临时表是否存在做一些逻辑处理。还好sql server已经集成了一个Object_ID的函数,能够判断是否创建了临时表。使用挺方便的。 OBJECT_ID 参数: 'object_name' 要使用的对象。object...

mysql插入数据时,去掉重复的数据;

1. 利用insert ignore into语句去重 mysql> INSERT IGNORE INTOperson_tbl (last_name, first_name) -> VALUES( 'J', 'T'); Query OK, 1 row affected (0.00sec) mysql> INSERT IGNO...

Java基础面试题(1)

个人总结,仅自己学习用。愿与大家一起分享!如有错误请指正。 一、String,StringBuffer, StringBuilder 的区别是什么?String为什么是不可变的? 答: 1、String是字符串常量,StringBuffer和StringBuilder都是字符串变量。后两者的字符内容可变,而前者创建后内容不可变。 2、String不可变是...

Oracle-数据泵使用

转至:https://www.cnblogs.com/chinas/p/8300955.html#_label0 阅读目录  一、为何选择数据泵方式 二、准备工作 1、目标新库上的操作 2、创建数据备份目录(源库和目标库) 三、导入导出 1、expdp导出 2、impdp导入 四、参数说明 1、expdb (1)关键字及其说明 (2)命令及...

oracle10g安装,卸载

一、安装 1.因为oracle的特殊性,笔者选择通过虚拟机安装windows7旗舰版安装数据库,大家的系统假设是windows xp。windows 7,windows 8能够直接安装,windows 10对于该版本号的oracle存在不兼容,不推荐使用。 2.笔者使用的是oracle10g的压缩包。大家也能够使用镜像进行安装,打开oracle安装程序...