oracle 怎么删除默认的临时表空间
1个回答
展开全部
删除默认临时表空间会报ora 12906错误,不允许删除。
解决办法是先创建一个表空间,然后将其设为默认临时表空间。接着再删除。
以下是命令:
CREATE TEMPORARY TABLESPACE TEMP2 TEMPFILE
'E:\TEMP02.DBF' SIZE 100M AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
TABLESPACE GROUP ''
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP2;
删除之前先把使用临时表空间的session kill掉
查询使用临时表空间的session
SELECT se.username, se.SID, se.serial#, se.sql_address, se.machine, se.program, su.TABLESPACE,
su.segtype, su.CONTENTS
FROM v$session se, v$sort_usage su
WHERE se.saddr = su.session_addr
alter system kill session '524,778'; (假如某一条运行的sql语句的SID为524,serial#为778)
DROP TABLESPACE TEMP INCLUDING CONTENTS AND DATAFILES;
解决办法是先创建一个表空间,然后将其设为默认临时表空间。接着再删除。
以下是命令:
CREATE TEMPORARY TABLESPACE TEMP2 TEMPFILE
'E:\TEMP02.DBF' SIZE 100M AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
TABLESPACE GROUP ''
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP2;
删除之前先把使用临时表空间的session kill掉
查询使用临时表空间的session
SELECT se.username, se.SID, se.serial#, se.sql_address, se.machine, se.program, su.TABLESPACE,
su.segtype, su.CONTENTS
FROM v$session se, v$sort_usage su
WHERE se.saddr = su.session_addr
alter system kill session '524,778'; (假如某一条运行的sql语句的SID为524,serial#为778)
DROP TABLESPACE TEMP INCLUDING CONTENTS AND DATAFILES;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询