數(shù)據(jù)庫有哪幾種鎖 Oracle數(shù)據(jù)庫鎖的常用類型有哪些?
Oracle數(shù)據(jù)庫鎖的常用類型有哪些?根據(jù)保護的對象不同,Oracle數(shù)據(jù)庫鎖可以分為以下幾大類:DML鎖(datalocks,數(shù)據(jù)鎖),用于保護數(shù)據(jù)的完整性;DDL鎖(dictionarylocks
Oracle數(shù)據(jù)庫鎖的常用類型有哪些?
根據(jù)保護的對象不同,Oracle數(shù)據(jù)庫鎖可以分為以下幾大類:DML鎖(datalocks,數(shù)據(jù)鎖),用于保護數(shù)據(jù)的完整性;DDL鎖(dictionarylocks,字典鎖),用于保護數(shù)據(jù)庫對象的結(jié)構(gòu),如表、索引等的結(jié)構(gòu)定義;內(nèi)部鎖和閂(internallocksandlatches),保護數(shù)據(jù)庫的內(nèi)部結(jié)構(gòu)。
oracle經(jīng)常死鎖,鎖定數(shù)據(jù)庫的一些表,導致oracle死鎖的原因一般有那些?
一般情況只發(fā)生鎖超時,就是一個進程需要訪問數(shù)據(jù)庫表或者字段的時候,另外一個程序正在執(zhí)行帶鎖的訪問(比如修改數(shù)據(jù)),那么這個進程就會等待,當?shù)攘撕芫面i還沒有解除的話就會鎖超時,報告一個系統(tǒng)錯誤,拒絕執(zhí)行相應的SQL操作。發(fā)生死鎖的情況比較少,比如一個進程需要訪問兩個資源(數(shù)據(jù)庫表或者字段),當獲取一個資源的時候進程就對它執(zhí)行鎖定,然后等待下一個資源空閑,這時候如果另外一個進程也需要兩個資源,而已經(jīng)獲得并鎖定了第二個資源,那么就會死鎖,因為當前進程鎖定第一個資源等待第二個資源,而另外一個進程鎖定了第二個資源等待第一個資源,兩個進程都永遠得不到滿足。
erp100.com
oracle數(shù)據(jù)庫中用戶名被鎖住是什么原因?
FAILED_LOGIN_ATTEMPTS參數(shù)默認是10,即:用戶連續(xù)輸入10次錯誤密碼,用戶會被鎖??;可以使用其他擁有DBA權(quán)限的用戶進行解鎖;alter user username account unlock如果是數(shù)據(jù)庫內(nèi)部出現(xiàn)死鎖或阻塞會話,可以先查出阻塞的會話,select * from dba_waiters在殺掉阻塞的會話alter system kill session "sid,serial#"測試環(huán)境,可以直接重啟數(shù)據(jù)庫!