`

转:resumable_timeout 参数说明

 
阅读更多

总结: 当在会话里打开这个功能后(运行 alter session enable resumable timeout ,
默认7200).当运行某些sql导致空间不足(表空间用完了)、或已抵达该表/段的 maxextents,
或者 该用户使用此表空间的配额已经用完(原话:Out of space condition, Maximum extents
reached condition, Space quota exceeded condition.),此时Oracle将不会报错,而是把
语句挂起,让 dba 在 timeout 所指定的时间范围内解决问题,之后语句又可以继续运行。

这个功能主要是防止因为空间不够的原因导致session failed

例如你create一个很大index,三天三夜后,完成了99%,这时候表空间用完了导致create失败,那只能吐血了

比如alter session enable resumable timeout 60;

挂起时间60秒到了之后就报错了,可以把挂起时间修改大一些,从9i开始,Oracle提供了一种避免因为space Error而导致事务异常的操作,那就是resumable.通常,DBA在日常工作中,往往忽略了对空间资源上的需求,比如一个大的事务所需要的temp,undo,data space等等。直到出现了经典的ORA-01652才恍然

有了resumable session后,他会等待一段时间,等你有了空间后继续

使用很简单,首先user要有resumable权限,如果没有,可以grant resumable to user

session开始时,alter session enable resumable就可以了

对于application可以通过logon trigger:

SQL> create or replace trigger logon_set_resumable
2 after logon
3 on xfan.schema
4 begin
5 execute immediate ‘alter session enable resumable
timeout 1200′;
6 end;
7 /

Trigger created.

这样当你空间不够的时候,session会等你,alert.log中有类似如下的信息

statement in resumable session ‘User CG15_USER(19), Session 1455, Instance 1′ was suspended due to

ORA-01652: unable to extend temp segment by12800 intablespace CATYINDX01

当你扩展表空间后,该session继续工作,alert.log中也有记录:

session in resumable session ‘User CG15_USER(19), Session 1455, Instance 1′ was resumed

当然在job开始之前预先加好空间还是上上之选,这个功能是为了以防万一

注意, 设定resumable_timeout的user , 必须有resumable 权限.

如:
SQL>altersessionenableresumable;
ERROR:
ORA-01031:insufficientprivileges

SQL> grant resumable to user;

SQL> alter session set resumable_time=9000;

分享到:
评论

相关推荐

    EXP命令:参数_举例_注意事项_问题与解决(整理汇)

    - **RESUMABLE_TIMEOUT**:等待可恢复操作的超时时间。 - **TTS_FULL_CHECK**:对TTS执行完全或部分依赖性检查。 - **VOLSIZEN**:写入每个磁带卷的字节数。 - **TABLESPACES**:列出要导出的表空间。 - **TRANSPORT...

    oracle资料

    - **格式**:RESUMABLE_TIMEOUT=wait_time_for_RESUMABLE ##### TTS_FULL_CHECK - **描述**:执行完全或部分依赖性检查。 - **格式**:TTS_FULL_CHECK=perform_full_or_partial_dependency_check_for_TTS ##### ...

    SqlLoader实用教程(基础入门)

    27. **resumable_timeout**: 可恢复操作等待的时间(秒),默认为7200秒。 - 示例: `resumable_timeout=3600` 28. **date_cache**: 日期转换缓存的大小(以条目为单位),默认为1000。 - 示例: `date_cache=2000`...

    imp-exp 命令.txt

    - `RESUMABLE_TIMEOUT`: 可恢复操作的超时时间。 ### Oracle IMP(Import) #### 命令语法与参数 `IMP`命令则用于将之前通过`EXP`命令导出的数据和结构重新导入到数据库中。其基本语法为: ``` IMP [username/...

    Oracle中用exp_imp命令参数详解

    - **RESUMABLE_TIMEOUT**: RESUMABLE的等待时间,默认值为空。用于指定可恢复操作的超时时间。 - **COMPILE**: 编译过程、程序包和函数,默认值为`y`。如果设置为`y`,则会编译导入的对象。 - **STREAMS_...

    sqlloader入门

    - `resumable_timeout`:对于RESUMABLE的等待时间(以秒为单位)。 - `date_cache`:日期转换缓存的大小(条目数)。 **3. 使用SQL*Loader的步骤** - **创建控制文件**:编写包含数据加载指令的 CTL 文件,例如...

    oracle 数据文件导入语句1

    - **RESUMABLE_TIMEOUT**:RESUMABLE 的等待时间。 - **COMPILE**:控制是否编译过程、程序包和函数,默认为 Y(编译)。 - **STREAMS_CONFIGURATION**:控制是否导入流的一般元数据,默认为 Y(导入)。 - **...

    Oracle exp、imp注意和使用

    - **RESUMABLE_TIMEOUT**: 断点续传超时时间。 - **COMPILE**: 编译无效的触发器或存储过程等。 - **TRANSPORT_TABLESPACE**: 迁移表空间。 - **TABLESPACES**: 指定要导入的表空间。 - **DATAFILES**: 指定要...

    OCP-043解析

    - 用户可以通过设置RESUMABLE TIMEOUT参数来调整这个超时时间。 #### 5. ASM磁盘管理 - **概念介绍**: - **条带化**(Striping):一种提高读写性能的技术,通过将连续的数据分割成相同大小的数据块并分布写入多...

    oracle ocp043 word 版

    2. 使用ALTER SESSION ENABLE RESUMABLE TIMEOUT 60命令设置会话在可恢复模式下运行,设置了超时时间为60秒。如果发生错误导致语句被挂起,选项C描述了正确的行为:这些被挂起的语句会在60秒内如果没有解决问题则会...

    Killtest 免费提供 1Z0-043 资料下载

    SQL> ALTER SESSION ENABLE RESUMABLE TIMEOUT 60; ``` 选项分析: - 如果在60秒内未解决问题,被挂起的语句将出错。 答案:C #### 3. 在添加或移除ASM磁盘时维持数据库性能 问题:在向ASM实例添加新磁盘或移除...

Global site tag (gtag.js) - Google Analytics