211.You want to disable resumable space allocation for all sessions. Which value should be assigned to the RESUMABLE_TIMEOUT parameter to disable resumable space allocation for all sessions?A. 0B. 10C. 100D. NULLAnswer: A答案解析:参考:http://docs.oracle.com/cd/E11882_01/server.112/e25494/schema.htm#ADMIN11589Setting the RESUMABLE_TIMEOUT Initialization Parameter 通过设置RESUMABLE_TIMEOUT初始化参数,可以指定默认的系统范围超时间隔。例如,初始化参数文件中的theRESUMABLE_TIMEOUT参数的以下设置将超时时间设置为1小时: RESUMABLE_TIMEOUT = 3600 如果将此参数设置为0,则即使对于运行ALTER SESSION ENABLE可恢复语句而没有超时值的会话,也禁用可恢复空间分配。 还可以使用ALTER SYSTEM SET语句在系统级更改该参数的值。例如,下面的语句禁用运行ALTER SESSION的所有会话的可恢复空间分配,使可恢复语句没有超时值:ALTER SYSTEM SET RESUMABLE_TIMEOUT=0;
关于参数RESUMABLE_TIMEOUT
RESUMABLE_TIMEOUT指定了当会话遇到空间问题(1:用户达到表空间分配大小 2:table达到max extents 3:表空间没有剩余空间 autoextend off 4:等等。。)时, 挂起的时间,单位秒。 以下是文档说明。 RESUMABLE_TIMEOUTProperty Description Parameter type: Integer Default value: 0 (seconds) Modifiable: ALTER SESSION, ALTER SYSTEM Range of values: 0 to 231 - 1 (in seconds) Oracle RAC Multiple instances can have different values. RESUMABLE_TIMEOUT enables or disables resumable statements and specifies resumable timeout at the system level.
开启resumable方式:
1:alter session enable resumable;
2:或设置resumable_timeout参数。非0
--以下为简单测试
YANG@orcl>select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
YANG@orcl>grant resource,connect,select_catalog_role to resum_test identified by test ;
授权成功。
--grant resource角色时会赋予 unlimited tablespace
YANG@orcl>revoke unlimited tablespace from resum_test;
撤销成功。
YANG@orcl>alter user resum_test default tablespace tbs_yang_test;
用户已更改。
YANG@orcl>alter user resum_test quota 0k on tbs_yang_test;
用户已更改。
YANG@orcl>conn resum_test/test
已连接。
22:44:17 RESUM_TEST@orcl>show parameter resuma;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
resumable_timeout integer 0
22:44:26 RESUM_TEST@orcl>create table t (id int);
表已创建。
--11g,创建表时不会分配extent。延迟区间分配
--insert,空间不足直接报错
22:44:37 RESUM_TEST@orcl>insert into t values(1);
insert into t values(1)
*
第 1 行出现错误:
ORA-01536: 超出表空间 'TBS_YANG_TEST' 的空间限额
--重新建立一个会话 更改resumable_timeout参数非0
22:45:48 YANG@orcl>alter system set resumable_timeout=600;
系统已更改。
22:46:00 YANG@orcl>conn resum_test;
输入口令:
已连接。
--insert时,session会等待
22:46:19 RESUM_TEST@orcl>insert into t values (1);
---打开另一个会话,更改空间大小,resum_test用户等待结束。
22:46:43 YANG@orcl>alter user resum_test quota 1m on tbs_yang_test;
用户已更改。
已创建 1 行。
22:47:03 RESUM_TEST@orcl>