oracle特定使用者登入失敗案例

2021-06-14 06:51:35 字數 1235 閱讀 4157

昨晚收到開發的郵件,說使用pl/sql dev登入資料庫時,出現如下錯誤,要求處理下:

看到這個錯誤我也比較鬱悶,沒碰到過這種情況。於是手工建立了乙個測試使用者scott,發現遠端登入沒有問題的。此時考慮應該是資料庫中有些使用者限制了登入的。再看錯誤編號:ora-20001,oracle保留的異常錯誤號範圍為-20999到-20000,提供給使用者自定義異常使用的,這進一步確認了資料庫的一些使用者被做了限制的。那到底做了哪些限制呢?

通常有兩種方法:

(1)在sqlnet.ora檔案中配置,比如:

限制ip位址192.168.131.109對資料庫的訪問

在sqlnet.ora檔案中新增如下內容:

tcp.validnode_checking=yes

tcp.invited_nodes=(192.168.130.11)

tcp.excluded_nodes=(192.168.131.109)

第一行的含義:啟用ip限制功能;

第二行的含義:允許訪問資料庫的ip位址列表,多個ip位址使用逗號分開,此例中我們寫入資料庫伺服器的ip位址;

第三行的含義:禁止訪問資料庫的ip位址列表,多個ip位址使用逗號分開,此處我們寫入欲限制的ip位址192.168.131.109。

然後重啟監聽生效。

(2)使用trigger

在trigger中定義,哪些ip及哪些使用者能夠遠端登入資料庫。

說明:使用profile是不能做到限制ip登入的。

很明顯,方法(1)不能自定義錯誤號:ora-20001,而使用方法(2)trigger中可以定義錯誤號,很有可能使用的是trigger,於是檢視:

果然是使用trigger限制登入ip及使用者的。

trigger_body:可以以mtdb(另乙個使用者,沒有做限制)登入 訪問加使用者字首,或者去除觸發器(不建議)。

oracle登入失敗

造成ora 12560 tns 協議介面卡錯誤的問題的原因有三個 1.監聽服務沒有起起來。windows平台個一如下操作 開始 程式 管理工具 服務,開啟服務面板,啟動oraclehome92tnslistener服務。2.database instance沒有起起來。windows平台如下操作 開...

Oracle取消使用者連續登入失敗次數限制

當使用者連續登入失敗次數過多時,oracle會鎖定該使用者,failed login attempts 用於設定最大次數,超過該值則鎖定該帳號。要取消使用者連續登入失敗次數的限制可以按照以下方法操作 1.輸入以下命令,檢視 failed login attempts 的值 2.輸入以下命令,修改 f...

Oracle使用者登入

系統使用者 1.sys,system 許可權較高 sys許可權高於system sys必須使用系統管理員登入 2.sysman 操作企業管理器 3.scott oracle創始人名字 密碼tiger 系統使用者登入 使用system使用者登入 username password server as ...