删除临时表空间
问题描述:进行数据库的数据清理,已经清理了4.6T的一个表空间,下边的大对象还有一个将近两个T的临时表空间需要清理。临时表空间的使用率并不高,当时被建到了两个T也不得而知,首先要先将用户的默认临时表空间切换到新的,然后将老的删除掉
1.当前RAC的数据盘free_mb 大概为5T,数据冗余类型是HIGH,三分冗余,后边清掉了一个4.6T的表空间,清理空间为15T,然后在清理一个用户下的临时表空间,2T左右。
2.查看临时表空间的使用率
select c.tablespace_name, to_char(c.bytes/1024/1024/1024,'99,999.999') total_gb, to_char( (c.bytes-d.bytes_used)/1024/1024/1024,'99,999.999') free_gb, to_char(d.bytes_used/1024/1024/1024,'99,999.999') use_gb, to_char(d.bytes_used*100/c.bytes,'99.99') || '%'use from (select tablespace_name,sum(bytes) bytes from dba_temp_files GROUP by tablespace_name) c, (select tablespace_name,sum(bytes_cached) bytes_used from v$temp_extent_pool GROUP by tablespace_name) d where c.tablespace_name = d.tablespace_name;
3.创建临时表空间,为了切换
4.查看此时用户的默认临时表空间,此时已经切换回来了,如果出现默认的临时表空间为两个的话,可能是还有操作在旧的临时表空间中工作
select username,default_tablespace,temporary_tablespace from dba_users where username='GDM'
5. 查看临时表空间的连接会话,发现已经没有了旧的连接表空间的会话了
select inst_id,username,session_num,sql_id,tablespace,segtype,sum(blocks)*8/1024/1024 size_in_gb from gV$TEMPSEG_USAGE group by inst_id,username,session_num,sql_id,tablespace,segtype
6.删除旧的临时表空间
drop tablespace GDM_TEMP including contents and datafiles cascade constraint;
7.删除完查看空间的释放情况,释放空间到了20T
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署