resumable特性以及系統觸發器中的SUSPEND event測試!
參考doc:
session1:
SQL> create tablespace users datafile 'E:ORACLEPRODUCT10.2.0ORADATAORCLUSE
RS.DBF' SIZE 3M;
表空間已建立。
SQL> grant resumable to xys;
授權成功。
SQL> create or replace trigger trigg_system
2 after suspend on database
3 begin
4 dbms_resumable.set_timeout(10);
5 end;
6 /
警告: 建立的觸發器帶有編譯錯誤。
SQL> show error
TRIGGER TRIGG_SYSTEM 出現錯誤:
LINE/COL ERROR
-------- -----------------------------------------------------------------
2/2 PL/SQL: Statement ignored
2/2 PLS-00201: 必須宣告識別符號 'DBMS_RESUMABLE'
SQL> create or replace trigger trigg_system
2 after suspend on database
3 begin
4 dbms_resumable.set_timeout(10);
5 end;
6 /
警告: 建立的觸發器帶有編譯錯誤。
SQL> connect /as sysdba
已連線。
SQL> grant execute on dbms_resumable to xys;
授權成功。
SQL> connect xys/manager
已連線。
SQL> create or replace trigger trigg_system
2 after suspend on database
3 begin
4 dbms_resumable.set_timeout(10);
5 end;
6 /
觸發器已建立
session2:
SQL> create table t_resumable tablespace users as select *from dba_objects;
表已建立。
SQL> insert into t_resumable select *from t_resumable;
insert into t_resumable select *from t_resumable
*
第 1 行出現錯誤:
ORA-01653: 表 XYS.T_RESUMABLE 無法透過 128 (在表空間 USERS 中) 擴充套件
SQL> alter session enable resumable;
會話已更改。
--注意這裡insert操作會等待10秒,10秒之後出現了錯誤
SQL> insert into t_resumable select *from t_resumable;
insert into t_resumable select *from t_resumable
*
第 1 行出現錯誤:
ORA-30032: 掛起的 (可恢復) 語句已超時
ORA-01653: 表 XYS.T_RESUMABLE 無法透過 128 (在表空間 USERS 中) 擴充套件
--回到session1修改一下timeout時間(10秒有些短,來不及修改datafile 4的autoextend屬性),單位是秒
SQL> create or replace trigger trigg_system
2 after suspend on database
3 begin
4 dbms_resumable.set_timeout(60);
5 end;
6 /
觸發器已建立
session2:
--此時下面insert會等待60秒,如果60秒之後發現空間可用,則繼續執行
SQL> insert into t_resumable select *from t_resumable;
已建立11413行。
--此期間在session1中修改datafile 4使其能自動擴充套件
SQL> alter database datafile 4 autoextend on;
資料庫已更改。
SQL>
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/19602/viewspace-1001252/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- resumable特性以及系統觸發器中的SUSPEND event測試觸發器
- Oracle觸發器6(建立系統事件觸發器)Oracle觸發器事件
- 測試開發之系統篇-按需建立測試虛擬機器虛擬機
- 系統觸發器的應用順序(四)觸發器
- 系統觸發器的應用順序(三)觸發器
- 系統觸發器的應用順序(二)觸發器
- 系統觸發器的應用順序(一)觸發器
- asm中template特性測試!ASM
- (15)mysql 中的觸發器MySql觸發器
- 系統測試-從研發到測試過程
- 瞭解SQL Server觸發器及觸發器中的事務AWSQLServer觸發器
- SQL Sever 2000中的前觸發器和後觸發器SQL觸發器
- 觸發器中操作LOB觸發器
- 使用系統級觸發器禁用DDL語句觸發器
- Alter system suspend/resume 導致的bug和特性
- 測試開發之系統篇-常用系統命令
- expdp和impdp自動使用resumable特性
- Oracle中觸發器的應用 (zt)Oracle觸發器
- 觸發器中不能commit觸發器MIT
- 測試開發之系統篇-安裝KVM虛擬機器虛擬機
- 英國央行測試用於新支付系統的區塊鏈特性區塊鏈
- 開發板觸控式螢幕測試
- ora-01555模擬以及undo tbs的guarantee特性測試!
- 門戶系統測試---功能測試
- [譯] 模組化系統中的 event.stopPropagation()
- 在遊戲陪玩系統開發中,如何進行效能測試?遊戲
- mysql 觸發器/過程中的變數!!MySql觸發器變數
- mysql觸發器案例分析以及before和after的區別MySql觸發器
- 敏捷開發中的測試敏捷
- 門戶系統測試---測試計劃
- 瀏覽器中的Event Loop瀏覽器OOP
- 白盒測試、灰盒測試以及黑盒測試的區別
- Oracle觸發器觸發級別Oracle觸發器
- Android學習 —— 測試init.rc中的條件觸發的處理順序Android
- 軟體系統測試有哪些測試過程?系統測試報告如何收費?測試報告
- 先知-Baidu的系統測試AI
- 基於Web的系統測試Web
- 測試開發之系統篇-Docker常用操作Docker