1 錯誤出現的現象是ora-28000 the account is locked
,既用戶無法登錄。
2 原因:出現這種錯誤的原因為由于用戶多次登錄,無法登陸成功,超過了數據庫允許登錄的次數,所以導致用戶被鎖定,這種機制也是對數據庫的一種保護,提升了數據庫的安全性。
3 解決的辦法如下:
(1)在dos窗口中輸入命令sqlplus /nolog
,截圖如下:
(2)點擊回車之后輸入命令conn /as sysdba出現的結果為:
(3)輸入命令desc dba_profiles
截圖如下:
(4)輸入命令select resource_name,limit from dba_profiles where resource_name = 'FIELD_LOGIN_ATTEMPTS'
;截圖如下:
(5)然后解鎖用戶,執行命令:alter user 用戶名 account unlock
;
(6) 修改FILED_LOGIN_ATTEMPTS
字段的值,為unlimited,既無論輸入多少次都不會被鎖定。但此時,數據的安全性將降低
可以執行命令:alter profile default limit failed_login_attempts unlimited
;截圖如下:
(7) 此時可以查看failed_login_attempts的值, 執行select resource_name,limit from dba_profiles where resource_name = 'FAILED_LOGIN_ATTEMPTS'
;截圖如下:
(8)到此為止,用戶已經被解除鎖定。
PS:下面看下[Oracle11g] ORA-28000: the account is locked 的解決辦法
用scott賬戶在PL/SQL中連接Oracle的時候,提示ORA-28000: the account is locked。
解決方案:
第一步:在%ORACLE_HOME%NETWORK/ADMIN目錄中找到sqlnet.ora文件,其中%ORACLE_HOME%為oracle的安裝路徑。
我的為:D:/app/haojiec/product/11.2.0/dbhome_1/NETWORK/ADMIN,打開sqlnet.ora,在文件中NAMES.DIRECTORY_PATH 和 ADR_BASE兩行中間加一行:SQLNET.AUTHENTICATION_SERVICES= (NTS),保存。
第二步:打開DOS窗口,輸入sqlplus sys/Oracle11g as sysdba;
其中 sys為賬戶,Oracle11g為我的密碼。成功則會有如下顯示:
連接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL>
第三步:
SQL> conn sys/Oracle11g as sysdba;Connected.
第四步:
SQL> alter user scott account unlock;User altered.SQL> commit;Commit complete.SQL> conn scott/tiger //請輸入新密碼,并確認后OKPassword changedConnected.
這時再到plsql developer里面以scott/tiger登錄就可以了。
新聞熱點
疑難解答