Oracle鎖競爭和管理 CUUG
http://bbs.cuug.com/forum.php?mod=viewthread&tid=1335&extra=page%3D1
? 定義鎖級別
? 列舉引起鎖衝突的原因
? 使用Oracle工具檢測鎖衝突
? 解決衝突
? 避免鎖衝突
? 瞭解oracle丟擲的死鎖錯誤
鎖
自動管理
High level of data concurrency
– DML事務需要行級別鎖
– 查處不需要鎖
資料的一致性
共享和排他鎖
事務結束鎖才會釋放
靜默資料庫(Quiesced database)
鎖:lock應用在資料塊
栓:latch應用在記憶體
靜默資料庫:處於該模式下的資料庫只允許sys使用者登入,其他使用者無法登入
alter system quiesce restricted;
alter system suspend.資料庫停頓
鎖分類:DML鎖和DDL鎖
DML鎖:表級別鎖
行級別鎖
一個DML事物至少兩個鎖:表共享鎖 行排它鎖
以佇列方式管理鎖
– 等待鎖資源
– 請求鎖的模式
– 使用者請求鎖的順序
查詢鎖競爭簡單方法:
1)建立catblock.sql
2)查詢utllockt.sql
查詢到了那個使用者佔用鎖,那個使用者正在請求鎖
select sid,serial#,username,status,PROGRAM, MACHINE from v$session
where sid=198;
利用MACHINE通知使用者
也可以利用alter system kill 'sid,seria#';方式kill
表級別鎖
表級別鎖自動分配:
? 行排他鎖(RX): INSERT, UPDATE,
DELETE
? 行共享鎖(RS): SELECT... FOR
UPDATE
表級別鎖
? 手工鎖表語句:
? 共享 (S)
– 不能坐DML操作
– 隱式被引用來保證資料的完整性
表級別鎖
? 行級共享排他鎖 (SRX)
– 不能做DML操作
– 隱式被引用來保證資料的完整性
– 在外來鍵上需要建立索引
– Oracle9i:
? 資料完整性約束已經改變.
? 在外來鍵列不需要建立索引.
? 排他(Exclusive )
DDL 鎖
? 下面情況需要使用DDL排他鎖:
– DROP TABLE
– ALTER TABLE
(當DDL語句執行完畢之後,鎖才會釋放.)
? 下面情況需要使用DDL 共享鎖:
– CREATE PROCEDURE
– AUDIT
(當DDL語句解析完畢之後,鎖才會釋放.)
? 當共享sql區域裡面有語句作廢時,會使用可分解的解
析鎖.
鎖衝突的原因
? 使用高階別的鎖
? 時間很長的事務
? 沒有及時提交事務
? 其它產品使用高階別的鎖
V$LOCK
V$LOCKED_OBJECT
DBA_WAITERS
DBA_BLOCKERS
oracle會自動檢測到死鎖,而且會自動處理
1、oracle會把第一個事務最後一個操作給取消,提供使用者完成事物的介面。
2、當事物2完成以後,我們要重新執行第一個使用者最後一條SQL
會寫入到trace檔案中,alert日誌中
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/500314/viewspace-1068539/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- golang中的鎖競爭問題Golang
- wait和notify在鎖競爭中的執行順序AI
- AQS原始碼探究之競爭鎖資源AQS原始碼
- CUUG筆記--oracle備份和恢復筆記Oracle
- CUUG《Oracle 監聽和TNS配置》- 筆記Oracle筆記
- 快取行競爭和偽共享快取
- 如何競爭專案管理工作(轉)專案管理
- 企業管理現代化:專案管理=競爭力(轉)專案管理
- 比特幣學習筆記——————9、競爭幣、競爭塊鏈和應用程式比特幣筆記
- 多執行緒程式設計的鎖問題解析(鎖競爭死鎖活鎖及Date Race等)執行緒程式設計
- ORACLE鎖的管理Oracle
- BM和SAP被Oracle鄙視 做競爭對手都不夠資格Oracle
- NoSQL 和 Hadoop 是競爭對手嗎?SQLHadoop
- 9i,enqueue,ORACLE鎖爭用 檢視爭用型別ENQOracle型別
- Linux 核心101:NUMA下的競爭管理Linux
- 競爭性需求分析
- CUUG ORACLE檢查點講解Oracle
- CUUG oracle物化檢視講解Oracle
- CUUG ORACLE高階工具的使用Oracle
- Oracle效能最佳化之診斷latch競爭(轉)Oracle
- ORACLE鎖的管理(zt)Oracle
- oracle鎖的管理(轉)Oracle
- 競爭條件入門
- 如何提高企業競爭力?CRM管理系統給你答案
- 監控供應鏈動態、競爭格局和策略
- 人工智慧時代的競爭人工智慧
- 唯品會競爭風險分析
- NABCD競爭性需求分析
- 關於redo writing競爭
- 競爭環境分析(轉載)
- Linux 併發與競爭Linux
- CUUG筆記 ORACLE索引學習筆記筆記Oracle索引
- 開源雲技能認證:系統管理員的核心競爭力
- BP-Wrapper:無鎖競爭的快取替換演算法系統框架APP快取演算法框架
- 前瞻性的集裝箱散貨碼頭管理核心競爭力
- 碼農會鎖,synchronized 物件頭結構(mark-word、Klass Pointer)、指標壓縮、鎖競爭,原始碼解毒、深度分析!synchronized物件指標原始碼
- 阿里遊戲的競爭力不在阿里阿里遊戲
- 兒童服飾行業競爭分析行業