FP 某段SQL语句执行时间超过1个小时,并报错:ORA-01652: 无法通过 128 (在表空间 TEMPSTG 中) 扩展
一、出现如下两个错误:
1.某一段SQL语句执行时间超过1个小时;
2.一个小时后,提示如下错误:ORA-01652: 无法通过 128 (在表空间 TEMPSTG 中) 扩展 temp 段ORA-06512: 在 "STG.FP_MO2SAP"
二、检查及处理过程
提示temp表空间有问题,临时表空间主要是用于在排序操作或者大型查询、统计分析操作。
1.先检查临时表空间信息 select * from dba_tablespaces; select * from dba_temp_files; select * from v$tempfile
检查发现临时表空间有32G,当前只执行此语句就把整个表空间用完,初步估计SQL语句有问题,可将语句拷贝出来研究。
如下图是释放后结果图:
2.对SQL语句进行优化,加索引,再次执行语句时间由一个小时变成6秒,成功一半。
CREATE INDEX STG.IDX_TEMP_MO_DBA01 ON STG.TEMP_MO(LOC_ID,ITEM)
LOGGING
TABLESPACE WWFDATA
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOPARALLEL; CREATE INDEX STG.IDX_IN_ITEM_SITE_DBA01 ON STG.IN_ITEM_SITE(ITEM_ID,PROC_TYPE)
LOGGING
TABLESPACE WWFDATA
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOPARALLEL; CREATE INDEX STG.IDX_IN_ITEMBOMROUTING_DBA01 ON STG.IN_ITEMBOMROUTING(PRODUCED_ITEM_ID,SITEID)
LOGGING
TABLESPACE WWFDATA
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE (
INITIAL 64K
NEXT 1M
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
FLASH_CACHE DEFAULT
CELL_FLASH_CACHE DEFAULT
)
NOPARALLEL;
3.将此SQL语句加回存储过程FP_MO2SAP后还是比较慢,再继续检查SQL语句。
select count(1) from IN_ITEMBOMROUTING --193027
select count(1) from temp_mo --
set serveroutput on
exec show_space('IN_ITEMBOMROUTING');
表记录数有19W条。有可能会把临时表空间吃完,对涉及到的基表做了一个空间占用情况统计,计算一下基表占用19922944字节,大约是19M。还不包括其它的表的字段统计,
4.接下来做一个执行计划和统计分析,得到如下结果:
发现SQL语句里面没有用到temp_mo表
FP 某段SQL语句执行时间超过1个小时,并报错:ORA-01652: 无法通过 128 (在表空间 TEMPSTG 中) 扩展的更多相关文章
- ORA-01652:无法通过128(在表空间temp中)扩展temp段 解决方法
ORA-01652:无法通过128(在表空间temp中)扩展temp段 解决方法 (2016-10-21 16:49:53) 今天在做一个查询的时候,报了一个"ORA-01652无法通过 ...
- ORA-01652:无法通过128(在表空间TEMP中)扩展temp段
在Oracle数据库中进行order by or group by.索引的创建和重创建.distinct操作.union & intersect & minus sort-merge ...
- java.sql.BatchUpdateException: ORA-01691: Lob 段 CSASSSMBI.SYS_LOB0000076987C00003$$ 无法通过 128 (在表空间 HRDL_CSASS 中) 扩展
问题: 在tomcat日志信息中出现:java.sql.BatchUpdateException: ORA-01691: Lob 段 CSASSSMBI.SYS_LOB0000076987C00003 ...
- ora-01652无法通过128(在表空间temp中)扩展temp段
今天提交请求后,提示ORA-01652: 无法通过 128 (在表空间 TEMP 中) 扩展 temp 段.最后通过ALTER DATABASE TEMPFILE '/*/*/db/apps_st/d ...
- 解决ora-01652无法通过128(在表空间temp中)扩展temp段
问题描述: 今天建索引的时候报:ora-01652无法通过128(在表空间temp中)扩展temp段 1.查看表空间是自动增长,且建表空间时是没有设表空间最大值的. 2.查看了一下表空间剩余多少竟然只 ...
- ORA-01652: 无法通过 128 (在表空间 TEMP 中) 扩展 temp 段(EXP-00056: 遇到 ORACLE 错误 1652 ORA-01652: unable to extend temp segment by 128 in tablespace TEMP)
数据库报 ORA-01652: 无法通过 128 (在表空间 TEMP 中) 扩展 temp 段 两种解决方式: 第一种) sql>select * from v$tempfile; 发现tem ...
- ORA-01652: 无法通过 128 (在表空间 HIS_TABLESPACE_TEMP 中) 扩展 temp 段
前言:采用jmeter进行压力测试,大概向oracle 添加了140W条数据. 结果系统涉及到该表的业务都异常卡.访问阿里巴巴的那个druid monitor,因为系统中集成了,查看sql监控中的sq ...
- 无法通过 128 (在表空间 TEMP 中) 扩展 temp 段
1.查看表空间中数据文件存储的路径以及是否可以自动扩展 SELECT TABLESPACE_NAME, BYTES/1024/1024 FILE_SIZE_MB, FILE_NAME FROM DBA ...
- ex.Message "ORA-01691: Lob 段 USER_MURPHY.SYS_LOB0000093717C00006$$ 无法通过 1024 (在表空间 ZJHH 中) 扩展"
Oracle,往数据库里导入dmp的时候报错:ORA-01691:Lob 段 无法通过8192(在表空间TS_SI中)扩展 解决方案1: 原因:所创建的表空间不足. 创建一个可拓展的表空间 creat ...
随机推荐
- sqlserver2008 创建定时任务
SQL2008如何创建定时作业?此方法也适应于Sql Server2005数据库,有兴趣的可以来看下! 1.打开[SQL Server Management Studio],在[对象资源管理器]列表中 ...
- 【webpy开发实战】webpy的cookbook 个人版
版本:webpy0.3 问题1.1 所需软件及环境配置? 解决办法 sqlite: jinja2:找不到jinja2模块时,将jinja模块文件夹加入 sys.path -> sys.path ...
- Oracle行转列操作
有时候我们在展示表中数据的时候,需要将行转为列来显示,如以下形式: 原表结构展示如下:---------------------------产品名称 销售额 季度------------ ...
- Flasky学习笔记(一)
1. app.run(debug=True,host='10.0.2.15',port=8000)自定义host及port;
- SSH in Python
需要安装paramiko,paramiko需要PyCrypto , PyCrypto 需要GCC编译. 安装PyCrypto: 安装Mingw32,确认环境变量. 下载并编译PyCrypto - se ...
- window.returnValue跨域传值问题[转]
主页面用window.showModalDialog的时候,如果直接打开其它系统的页面,这时候别人的页面在window.returnValue=1;这样返回值的时候,主页面是取不到返回值的,原因就是因 ...
- load mainaccount
static void LoadMainAccountCSV(Args _args) { /* SysExcelApplication excel; SysExcelWorkbooks ...
- Linux cache释放
cache释放: To free pagecache: > /proc/sys/vm/drop_caches To free dentries and inodes: > /proc/sy ...
- Oracle decode()函数应用
在项目第一次遇到decode()函数,简单写一下用法. ')), ')), ')), ')), ')), ')), ')) from wg_jzmb jz, wg_jzfz fz where jz.s ...
- NHibernate系列文章二十三:NHibernate查询之Criteria查询(附程序下载)
摘要 上一篇文章介绍了NHibernate HQL,他的缺点是不能够在编译时发现问题.如果数据库表结构有改动引起了实体关系映射的类有改动,要同时修改这些HQL字符串.这篇文章介绍NHibernate面 ...