Oracle:Ora-01652无法通过128(在temp表空间中)扩展temp段的过程-解决步骤
阅读原文时间:2023年09月27日阅读:3

现象:查询select * from v$sql时提示“Ora-01652无法通过128(在temp表空间中)扩展temp段的过程”

临时文件是不存储的,可以将数据库重启,重启后重建临时表空间;

shutdown immediate;--关库

startup;--启库

alter pluggable database db_** open;--打开

alter session set container=db_**;--切到目的数据库

select * from v$tempfile;--查看临时文件状态

或者手动创建临时文件。下面是手动创建临时文件的步骤:

解决步骤

1、查询当前临时表空间的信息

select * from dba_temp_files
FILE_NAME FILE_ID TABLESPACE_NAME BYTES BLOCKS STATUS RELATIVE_FNO AUTOEXTENSIBLE MAXBYTES MAXBLOCKS INCREMENT_BY USER_BYTES USER_BLOCKS SHARED INST_ID


(null) 3 TEMP (null) (null) OFFLINE (null) (null) (null) (null) (null) (null) (null) SHARED (null)

发现数据库并没有临时表空间

2、查询库中的临时文件状态

select name,status from v$tempfile;
NAME STATUS


/oradata/cdbtest/CDB_TEST/91C8CF1A0C80626CE0535465A8C0455F/datafile/o1_mf_temp_gq1852yy_.dbf OFFLINE

临时文件处于OFFLINE状态

3、给临时表空间增加临时文件

alter tablespace temp add tempfile '/oradata/cdbtest/CDB_TEST/temp/datafile/temp_clear_01.dbf' size 1024M

此时需注意,数据库中需要存在目录“/oradata/cdbtest/CDB_TEST/temp/datafile/”,临时文件添加成功

至于为什么在“/oradata/cdbtest"目录下,是通过show parameter db_create_file_dest参数,查看value值获得的。

“CDB_TEST/temp/datafile”目录要提前准备好

4、再次验证临时文件状态

select name,status from v$tempfile;
NAME STATUS


/oradata/cdbtest/CDB_TEST/91C8CF1A0C80626CE0535465A8C0455F/datafile/o1_mf_temp_gq1852yy_.dbf OFFLINE
/oradata/cdbtest/CDB_TEST/91C8CF1A0C80626CE0535465A8C0455F/datafile/o1_mf_temp_gq1852yy_.dbf ONLINE

同时查询“select * from v$sql”能获得相应的结果集

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章