1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Oracle 临时表空间过大问题解决

Oracle 临时表空间过大问题解决

时间:2021-12-05 03:55:08

相关推荐

Oracle 临时表空间过大问题解决

数据库|mysql教程

Oracle教程,Oracle 临时表空间过大问题解决,数据

数据库-mysql教程

bitcoin客户端源码,ubuntu杀掉僵尸进程,tomcat启动时间不对,金乡爬虫店,开放平台开发框架php,文山seo公司lzw

查询Oracle数据库服务器时,发现数据库服务器磁盘使用空间达到了98%,分析总共的数据文件也不可能达到如此大,经过查询发现原来

delphi 聊天源码,vscode制作思维导图,ubuntu装阿帕奇,tomcat 编码规则错了,币乎 爬虫,php网站模板安装,江津区seo优化口碑推荐,帝国理财网站源码,织梦手机端详情页模板怎么改lzw

在线订单导入源码,ubuntu 有快速开机,tomcat监听指定端口号,爬虫运动仿真,php继承学习笔记教程,全国seo公司lzw

查询Oracle数据库服务器时,发现数据库服务器磁盘使用空间达到了98%,分析总共的数据文件也不可能达到如此大,经过查询发现原来临时表空间的使用情况达到了 32G,导致磁盘空间使用紧张。搜索了相应的文档与资料后,查出临时表空间主要使用在:

– 索引创建或重创建。

– ORDER BY or GROUP BY (这个是‘罪魁祸首’)

– DISTINCT 操作。

– UNION & INTERSECT & MINUS – Sort-Merge joins. – Analyze 操作

– 有些异常将会引起temp暴涨(这个也很有可能)

下面是重新创建一个临时表空间,把原来的默认临时表空间drop掉(包括里面的临时数据文件)再重新建立

SQL> create temporary tablespace temp2

2 tempfile ‘/home/oracle/oracle/product/10.2.0/oradata/hatest/temp02.pdf’ size 512M reuse

3 autoextend on next 640k maxsize unlimited;

Tablespace created.

SQL> alter database default temporary tablespace temp2;

Database altered.

SQL> drop tablespace temp including contents and datafiles;

Tablespace dropped.

(注意:由于临时表空间的数据文件比较大,所以这步可能会花费比较长的时间)

SQL> create temporary tablespace temp

2 tempfile ‘/home/oracle/oracle/product/10.2.0/oradata/hatest/temp01.pdf’ size 512M reuse

3 autoextend on next 640K maxsize unlimited;

Tablespace created.

SQL> alter database default temporary tablespace temp;

Database altered.

SQL> drop tablespace temp2 including contents and datafiles;

Tablespace dropped.

SQL> exit

以上的方法只是暂时释放了临时表空间的磁盘占用空间,是治标但不是治本的方法,,真正的治本的方法是找出数据库中消耗资源比较大的sql语句,然后对其进行优化处理。下面是查询在sort排序区使用的执行耗时的SQL

Select se.username,se.sid,su.extents,su.blocks*to_number(rtrim(p.value))as Space,tablespace,segtype,sql_text

from v$sort_usage su,v$parameter p,v$session se,v$sql s

where p.name=’db_block_size’ and su.session_addr=se.saddr and s.hash_value=su.sqlhash and s.address=su.sqladdr

order by se.username,se.sid

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。