You want execution of large database operations to suspend, and then resume, in the event of space allocation failures.
You set the value of the initialization parameter RESUMABLE_TIMEOUT to 3600.
Which two statements are true?
創(chuàng)新互聯(lián)是一家集網站建設,昭陽企業(yè)網站建設,昭陽品牌網站建設,網站定制,昭陽網站建設報價,網絡營銷,網絡優(yōu)化,昭陽網站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網站。
A.Before a statement executes in resumable mode, the ALTER SESSION ENABLE RESUMABLE statement must be issued in its session
B.Data Manipulation Language (DML) operations are resumable, provided that they are not embedded in a PL/SQL block.
C.A resumable statement can be suspended and resumed only once during execution.
D.A suspended statement will report an error if no corrective action has taken place during a timeout period.
E. Suspending a statement automatically results in suspending a transaction and releasing all the resources held by the transaction.
Answer: AD
【解析】
可恢復空間分配的工作方式為:
僅當通過以下操作之一為語句的會話啟用了可恢復空間分配時,該語句才以可恢復模式執(zhí)行:
該ALTER SESSION ENABLE RESUMABLE聲明是在語句執(zhí)行前的會議時發(fā)出的RESUMABLE_TIMEOUT初始化參數設置為非零值。
該ALTER SESSION ENABLE RESUMABLE TIMEOUT timeout_value語句在執(zhí)行之前在會話中發(fā)出,并且timeout_value是非零值。
當出現以下情況之一時,可恢復語句被掛起(這些條件導致非可恢復語句被發(fā)出相應的錯誤信號):
空間不足
達到最大范圍的條件
超出空間配額條件。
當中止可恢復語句的執(zhí)行時,有一些機制可以執(zhí)行用戶提供的操作,記錄錯誤以及查詢語句執(zhí)行的狀態(tài)。暫??苫謴驼Z句后,將執(zhí)行以下操作:
該錯誤在警報日志中報告。
系統(tǒng)發(fā)出“可恢復的會話已掛起”警報。
如果用戶在AFTER SUSPEND系統(tǒng)事件上注冊了觸發(fā)器,則將執(zhí)行用戶觸發(fā)器。用戶提供的PL / SQL過程可以使用DBMS_RESUMABLE包和DBA_或USER_RESUMABLE視圖訪問錯誤消息數據。
掛起語句會自動導致掛起事務。因此,所有事務資源都通過語句中止和恢復來保留。
解決錯誤情況后(例如,由于用戶干預或其他查詢釋放的排序空間),被掛起的語句將自動恢復執(zhí)行,并清除“可恢復的會話被掛起”警報。
可以使用該DBMS_RESUMABLE.ABORT()過程強制執(zhí)行已暫停的語句引發(fā)異常。DBA或發(fā)出該語句的用戶可以調用此過程。
由RESUMABLE_TIMEOUT初始化參數或ALTER SESSION ENABLE RESUMABLE TIMEOUT語句中的超時值指定的暫停超時間隔與可恢復語句相關聯(lián)。如果在超時間隔內未解決錯誤條件,則會暫停在超時間隔內暫停的可恢復語句,并將異常返回給用戶。
可恢復語句可以在執(zhí)行期間被掛起和恢復多次。
【官方手冊】
https://docs.oracle.com/en/database/oracle/oracle-database/19/admin/managing-space-for-schema-objects.html#GUID-46AE3FD8-95D4-4CFA-9F3C-B80C5AFDE75B