resumable_timeout这个参数功能时是在指定恢复等待时间,在等待期间若未处理异常,那么,事务将中断。
往往我们的表空间都是非自动扩展的,当我们做一个大的操作的时候,可以小利用一下这个参数,我们以insert为例做一下测试:
1:创建一个非自动扩展的小表空间
SYS@ORCL>create tablespace ts_timeout datafile '/u01/oracle/oradata/ORCL/ts_timeout_01.dbf' size 1m;
Tablespace created.
SYS@ORCL>
2:创建测试表tab_timeout表空间使用 ts_timeout
SYS@ORCL>create table tab_timeout(col1 char(10),col2 char(10)) tablespace ts_timeout;
Table created.
SYS@ORCL>
3:查看参数值
SYS@ORCL>set time on
17:22:02 SYS@ORCL>set timing on
17:22:05 SYS@ORCL>show parameter resumable_timeout
NAME TYPE VALUE
------------------------------------ ----------- ---------------
resumable_timeout integer 0
17:22:24 SYS@ORCL>
4:插入大量数据,使其撑满表空间,让其报错
17:22:28 SYS@ORCL>
17:22:28 SYS@ORCL>insert into tab_timeout select rownum,rownum from dual connect by rownum<=10000000000;
insert into tab_timeout select rownum,rownum from dual connect by rownum<=10000000000
*
ERROR at line 1:
ORA-01653: unable to extend table SYS.TAB_TIMEOUT by 8 in tablespace TS_TIMEOUT
Elapsed: 00:00:00.10
17:22:30 SYS@ORCL>
5:会话级修改参数
17:22:37 SYS@ORCL>alter session set resumable_timeout=10;
System altered.
Elapsed: 00:00:00.02
17:22:46 SYS@ORCL>
17:22:47 SYS@ORCL>show parameter resumable_timeout
NAME TYPE VALUE
------------------------------------ ----------- ---------------
resumable_timeout integer 10
17:22:49 SYS@ORCL>
6:再次插入超出表空间承受范围的数据
17:22:50 SYS@ORCL>insert into tab_timeout select rownum,rownum from dual connect by rownum<=10000000000;
insert into tab_timeout select rownum,rownum from dual connect by rownum<=10000000000
*
ERROR at line 1:
ORA-30032: the suspended (resumable) statement has timed out
ORA-01653: unable to extend table SYS.TAB_TIMEOUT by 8 in tablespace TS_TIMEOUT
Elapsed: 00:00:14.13
17:23:06 SYS@ORCL>
我们会发现,第四步瞬间就抛出了异常,修改了参数以后,第六步等待了resumable_timeout设置的秒数后才抛出的错误,事务才结束。
小结:
在等待的时候,alert日志会有相应的错误信息。
我们在做可能出现问题且可以控制的操作时,可以将这个参数设置合适大小,比如:晚上下班公司要导入一个dmp文件,那么表空间大小是否够用还不能确定,那么,我们就可以将这个参数设置一个相对较大的值,即我第二天上班的时候还是挂起状态,那么,万一有问题了,我们早晨处理还来得及,避免了重复操作,节约了时间及精力。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/685769/viewspace-743092/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/685769/viewspace-743092/