標籤:style color io strong for ar cti linux 時間
在Oracle 11g之前,當一個表上還有事務,此時不能對錶進行DDL操作,否則會馬上報錯。在11g裡引進了ddl_lock_timeout這個參數,可以等上一段時間後還沒有獲得鎖,才會報錯。我個人認為這個新特性用處不大,知道就行了。
session1:
SQL> 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 Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
SQL> drop table test purge;
SQL> create table test(id number(10));
SQL> insert into test values(1);
已建立 1 行。
session2:
SQL> show parameter ddl_lock_timeout;
NAME TYPE VALUE
------------------------------------ ----------- -----------
ddl_lock_timeout integer 0
SQL> set timing on
SQL> drop table test;
drop table test
*
第 1 行出現錯誤:
ORA-00054: 資源正忙, 但指定以 NOWAIT 方式擷取資源, 或者逾時失效
經過時間: 00: 00: 00.01
SQL> alter session set ddl_lock_timeout = 10;
SQL> drop table test;
drop table test
*
第 1 行出現錯誤:
ORA-00054: 資源正忙, 但指定以 NOWAIT 方式擷取資源, 或者逾時失效
經過時間: 00: 00: 10.01
Oracle 11g ddl_lock_timeout