orcle 11g 密碼延遲驗證害死人

2021-07-02 18:26:04 字數 1141 閱讀 3763

在v$session檢視中查詢library cache lock等待相關的會話資訊,發現username為空而且不是oracle後台進行。這就是說這些會話還沒有連線到資料庫,一直在等待驗證狀態。

select * from gv$session_wait where event like 'library cache lock';

因為以前也遇到過'library cache lock'等待事件的問題直接使用下面的語句查占用'library cache lock'的會話,但是返回的確實沒有結果這可就神奇了。難道沒人阻塞它自己就產生library cache 鎖了嗎?詭異啊

select sid,username,status,schemaname,process,machine,sql_id,terminal,program from v$session 

where saddr in  

(select kgllkses from x$kgllk lock_a  

where kgllkreq = 0 

and exists (select lock_b.kgllkhdl from x$kgllk lock_b 

where kgllkses = 'saddr_from_v$session' /* blocked session */ 

and lock_a.kgllkhdl = lock_b.kgllkhdl 

and kgllkreq > 0) 

); 現在問題就hang這裡了,library cache lock等待的會話不斷的增加,而又找不到那個會話阻塞了它。最後資料庫連線滿了,沒有辦法把資料庫重啟了。

資料庫起來以後,檢查library cache lock等待事件沒有輸出資料庫顯示正常。不過等待1個小時之後library cache lock又大量的出現,不過一會又消失了,有點詭異。在網上看到yangtingkun的一篇關於oracle 11g 密碼延長驗證的文章感覺和上面的問題很像,於是寫了個記錄登入失敗的觸發器,過了不一會就在alert中發現大量的連線失敗記錄,找到負責192.168.0.234這個臺機器的程式設計師讓他查程式連線使用者和密碼是否正確。結果發現密碼不對,而且這個程式是每隔一段時間就向資料庫傳送連線請求,把密碼修改正確後library cache lock就沒有在出現過。

最後問下,有沒有倒霉的童鞋遇到過這樣的情況,嘿嘿!

oracle 11g登入密碼問題

可能原因如,請一一核對 1 如果你以sys使用者登入的話,連線身份請選擇 as sysdba 說明 如果你的sys使用者密碼在安裝的時候沒有修改,他的預設密碼是 change on install 如果你改了忘記了,可以利用如下方法重置 1 進入cmd 2 sqlplus as sysdba 3 a...

Oracle 11g密碼過期問題

oracle 11g預設使用者密碼會在使用180天後過期,我們可以通過dba users資料字典看一下使用者的資訊。sql select username,account status,lock date,expiry date,created,profile from dba users 結果如下...

oracle 11g 使用者密碼過期問題

1 oracle 11g 之前預設的使用者時是沒有密碼過期的限制的,在oracle 11g 中預設的profile啟用了密碼過期時間是180天。如下檢視有效期 select from dba profiles where profile default and resource name passw...