当并行查询服务器返回错误时,我很难弄清楚如何处理PL/SQL中的异常。
考虑以下几点:
BEGIN
EXECUTE IMMEDIATE('ALTER <SOME_INDEX> REBUILD PARALLEL(4) );
EXCEPTION
WHEN OTHERS THEN
IF SQLCODE = -01652 THEN
DBMS_OUTPUT.PUT_LINE('Not enought space');
ELSE
DBMS_OUTPUT.P
我试图使用SSIS包从Oracle中提取大量数据,但是包在2小时后失败,我得到了以下错误:
"[OLE DB Source [1]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E14.
An OLE DB record is available. Source: "OraOLEDB" Hresult: 0x80040E14 Description: "ORA-12801: error signaled in paral
我想在oracle中使用以下sql命令创建表的副本:
create table table_backup as select * from paper_search;
我遇到了这样的错误
[Err] ORA-01652: unable to extend temp segment by 8192 in tablespace
因为表paper_search的大小是20 of。我用谷歌搜索了一下,发现在oracle中增加了临时内存的大小,但我不知道如何解决这个问题,任何建议都将受到高度赞赏。
我们在oracle 12c中使用一次性合并查询,该查询获取大约"22633334“条数据记录并在目标表中更新它,但是每次查询运行时抛出"ORA-01652: unable to extend temp segment by 64 in tablespace TEMP”问题时,DBA已经将其扩展到60 GB。谁能告诉我如何解决这个问题,或者为这个数据量分配什么是理想的临时空间?
我继承了Oracle数据库中基本的类似DBA的职责,并且在尝试运行包含大量联接和分组的查询时,遇到了ORA-01652错误。以下是我遇到的错误:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
01652. 00000 - "unable to extend temp segment by %s in tablespace %s"
*Cause: Failed to allocate an extent of the required number of blocks for
背景:我想将表格列从Long更改为Clob。
不允许创建/更改表空间
这个表有10米以上的行
我试过的是:
只需将表从long更改为clob:
- returns full tablespace error - `ORA-01652`: `"unable to extend temp segment by %s in tablespace %s"`
从表中导出数据并插入新表:
- export just takes too long, at the speed its going now, it will take weeks
我必须为新报告创建一个sql查询。问题是我必须做11个Left Outer Join!哦,是的,这是最糟糕的部分。当我执行查询Oracle生成此错误时:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
01652. 00000 - "unable to extend temp segment by %s in tablespace %s"
*Cause: Failed to allocate an extent of the required number of blocks for
我得到了这个包含数百万行的表,它们是我通过append提示加载的。
现在,我重新打开约束,得到以下结果:
2012-03-23 01:08:53,065错误SQL:Error in executing SQL:
alter table summarydata add constraint table_pk primary key (a, b, c, d, e, f)
java.sql.SQLException: ORA-30032: the suspended (resumable) statement has timed out ORA-01652: unable to extend
我有Oracle过程,它由一些立即执行的块组成。其中一张--加入两张大桌子(~100-200,000,000条记录):
v_sql:='create table idb.cm_contact_add_char_exp_tmp as
select ch.* from idb.cm_contact_add_char_exp ch join
idb.communication_contact_exp_tmp cont on cont.customer_rk=ch.customer_rk and ch.RESPONSE_TRACK_CD=cont.RESPONSE_TRACK_CD&
我有一个没有索引的底层表,并希望基于复合列创建一个索引列,如下所示。然而,当这样做的时候,底层查询会运行很长时间,并消耗整个临时空间。我们怎么才能以不同的方式来写呢?
"select /*+ PARALLEL(8) */ a.* , a.id||a.period as d_idx from test1 a join test2 b on test1.id=test2.id where b.acct='Clnt'
我之所以这样做"a.id||a.period as d_idx“,是因为我们的逻辑需要一个索引列(而不是复合列),所以我将它们连接在一起,生成一个索引列
我有一个很大的Oracle表,其中包含542512行。它有三列,当我尝试使用以下命令为它创建索引时:
CREATE INDEX FTS_INDEX ON FILTERED_TEKLI_IIS_TABLOSU (ilAdi,ilceAdi,caddeAdi)
Oracle给出以下错误:
SQL Error: ORA-01652: unable to extend temp segment by 128 in tablespace SYSTEM
01652. 00000 - "unable to extend temp segment by %s in tablespace %s
我最近需要将.dmp导入到我创建的新用户中。我还使用以下命令为用户创建了一个新的表空间:
create tablespace my_tablespace
datafile 'C:\My\Oracle\Install\DataFile01.dbf' size 10M
autoextend on
next 512K
maxsize unlimited;
当导入正在运行时,我得到一个错误:
ORA-01652 Unable to extend my_tablespace segment by in tablespace
当我检查dba_data_files表中的数据文件时,我
我有一个存储过程,在这个过程中,我使用游标循环遍历临时表中的项:
OPEN CURSOR_SCORE_ITEMS FOR SELECT
ID_X, ID_Y
FROM
SCORE_ITEMS
GROUP BY
ID_X, ID_Y
HAVING
SUM(SCORE) > 10;
LOOP
FETCH CURSOR_SCORE_ITEMS BULK COLLECT INTO COMPARE_ITEMS LIMIT 100;
---loop over items an
我使用Oracle已经有一年了,遇到了一个关于表空间TEMP的新问题--这里可能缺少我的术语。如何修改临时表段大小以使select查询始终成功运行。
我有一个select语句,它可以在某个时间点工作,但在其他时间会失败。Oracle中的临时表段大小是否可能会以某种方式发生变化,从而影响给定的select语句是否可以在某一时刻工作,但在另一时刻失败?原因是b/c我已经运行了一条select语句,该语句将成功运行一次,但下一次将失败。当它失败时,它会给出这个错误:
ORA-01652: unable to extend temp segment by 64 in tablespace TEMP
另
下面是我的sql查询。这里,我使用DBMS_RANDOM.VALUE从两个不同的表中过滤2组数据。Oracle加载时间很长,并且抛出错误以下。我试着寻找同样的错误。但答案解决不了我的问题。请告诉我是否有其他方法来达到这一结果。
select * from (select ac.account, ph.phone_no
from account ac, phone ph
and ac.account_status = 'OPEN'
and ac.account_type ='1'
and ac.account_sub_type ='
我在一个项目中工作,其中我在数据库上工作,在java程序中,我需要从数据文件中读取clob数据,然后创建clob对象,并在对象中设置clob数据并插入行。我正在做10000行的批量插入。但在读取了一些(32)行后,我收到以下错误:-
java.io.IOException: ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
at oracle.jdbc.driver.OracleClobOutputStream.flushBuffer(OracleClobOutputStream.java:293)
at o
我正在使用Hibernate的EntityManagerFactory,connectionPoolSize为20。现在我有一些更大的查询(t> 30分钟),它们完全占据了我的池。当我开始一个新的查询(使用getEntityManager)时,我得到了以下异常:
javax.persistence.PersistenceException: org.hibernate.HibernateException:
The internal connection pool has reached its maximum size and no connection is currently a
我有三个用户在oracle上,他们有相同的表空间,当我运行以下查询时,在执行查询时会遇到以下问题。而且,在执行过程中需要花费大量的时间:
ORA-01652: unable to extend temp segment by 128 in tablespace TEMP
01652. 00000 - "unable to extend temp segment by %s in tablespace %s"
*Cause: Failed to allocate an extent of the required number of blocks for
a
在Oracle11g中,这个查询运行良好
select (case
when seqnum = 1 then
t.DPR_N
when seqnum = cnt then
'0'
end) as VALUE1,
(case
when seqnum = 1 then
t.BEGIN_DT
when seqnum = cnt then
t.END_DT
end) as timestamp,
我们的Dataload在运行了几个小时后失败。DBA将temp tablespace提高了三倍。尽管如此,它还是失败了。错误的原因可能是什么?块大小或其他内容重要吗? 尝试使用数据集crm为此加载规则CRM_ECC_UTIL_PVT.GET_ECC_DATA_LOAD_INFO摄取数据时出错-作业125,840的支出 **java.sql.SQLException: ORA-01652: unable to extend temp segment by 128 in
tablespace TEMP** 我已经按照一些人的建议放置了sql。 SELECT
*
FROM
(