是这样: 性能测试环境中,要创建两张表,两条sql语句的执行计划如下:---------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
---------------------------------------------------------------------------------------------
| 0 | CREATE TABLE STATEMENT | | 3947K| 1551M| | 2005K (1)| 06:41:03 |
| 1 | LOAD AS SELECT | TAB1 | | | | | |
|* 2 | HASH JOIN RIGHT SEMI | | 3947K| 1551M| 328M| 1954K (1)| 06:30:53 |
| 3 | TABLE ACCESS FULL | C | 9846K| 215M| | 13946 (1)| 00:02:48 |
|* 4 | TABLE ACCESS FULL | A | 45M| 16G| | 1060K (1)| 03:32:12 |
---------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
---------------------------------------------------------------------------------------------
| 0 | CREATE TABLE STATEMENT | | 5774K| 2268M| | 2139K (1)| 07:07:51 |
| 1 | LOAD AS SELECT | TAB2 | | | | | |
|* 2 | HASH JOIN RIGHT SEMI | | 5774K| 2268M| 1527M| 2064K (1)| 06:52:59 |
| 3 | TABLE ACCESS FULL | B | 45M| 1004M| | 64646 (1)| 00:12:56 |
|* 4 | TABLE ACCESS FULL | A | 45M| 16G| | 1060K (1)| 03:32:12 |
---------------------------------------------------------------------------------------------其中表 B、C 的结构完全一样,A、B、C三表的统计信息完全正确(CBO评估正确,已验证)。问题: temp表空间20G,执行第二个的时候,语句建表成功,执行第一个的时候,sql报错(1652). 数据库当时没有其他的sql在执行,跟踪发现,第一个把temp空间耗尽。 数据量大的执行没问题,数据量小的竟然失败? 求解join数据库
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
---------------------------------------------------------------------------------------------
| 0 | CREATE TABLE STATEMENT | | 3947K| 1551M| | 2005K (1)| 06:41:03 |
| 1 | LOAD AS SELECT | TAB1 | | | | | |
|* 2 | HASH JOIN RIGHT SEMI | | 3947K| 1551M| 328M| 1954K (1)| 06:30:53 |
| 3 | TABLE ACCESS FULL | C | 9846K| 215M| | 13946 (1)| 00:02:48 |
|* 4 | TABLE ACCESS FULL | A | 45M| 16G| | 1060K (1)| 03:32:12 |
---------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
---------------------------------------------------------------------------------------------
| 0 | CREATE TABLE STATEMENT | | 5774K| 2268M| | 2139K (1)| 07:07:51 |
| 1 | LOAD AS SELECT | TAB2 | | | | | |
|* 2 | HASH JOIN RIGHT SEMI | | 5774K| 2268M| 1527M| 2064K (1)| 06:52:59 |
| 3 | TABLE ACCESS FULL | B | 45M| 1004M| | 64646 (1)| 00:12:56 |
|* 4 | TABLE ACCESS FULL | A | 45M| 16G| | 1060K (1)| 03:32:12 |
---------------------------------------------------------------------------------------------其中表 B、C 的结构完全一样,A、B、C三表的统计信息完全正确(CBO评估正确,已验证)。问题: temp表空间20G,执行第二个的时候,语句建表成功,执行第一个的时候,sql报错(1652). 数据库当时没有其他的sql在执行,跟踪发现,第一个把temp空间耗尽。 数据量大的执行没问题,数据量小的竟然失败? 求解join数据库
解决方案 »
- 如何查看oracle当前连接数,连接是否执行了sql语句,执行的sql语句是什么
- 求救~~~~sequence获取不到下个值
- System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7 或更高版本。
- 以前用用好好的,为什么突然出现 maximum number of sessions exceeded
- ERWIN7 如何链接到 oralce10g呢?小的我怎么就连不上去,请大家帮帮忙吧。。急啊~
- ORA-03106错误。100分求救,在线等待,立刻结分。
- 请问使用EXP命令能否导出远程服务器上的oracle数据库
- oracle中日期与时间的问题 各位多多指教 谢谢 (急!急!急!急!急!急!)
- 为什么以下2个sql语句的结果起不到排序的效果???
- 匯出XML方式 請教
- 索引扫描的几种类型
- 安装oracle 10g时,出现安装要求满足,但弹出乱码窗口,无法继续,跪求大神帮忙!!
是不是关联条件不充分导致笛卡尔积?或者执行完第二条语句后temp空间已经快耗光了,所以再执行第一条语句就空间不够了