Oracle

系統帳戶被鎖定,權限不足,無法以 sysdba 身份登錄

  • August 30, 2019

我已經研究了網路,但我找不到與我完全相同的情況,所以我發布了這條消息。

我正在通過遠端桌面連接連接到遠端伺服器(Win2k3 伺服器)。此伺服器已安裝(從 v$version 中選擇 *):

  • Oracle 數據庫 10g 企業版 10.2.0.5.0 版 - 產品
  • PL/SQL 版本 10.2.0.5.0 - 生產
  • 核心 10.2.0.5.0 生產
  • 用於 32 位 Windows 的 TNS:版本 10.2.0.5.0 - 生產
  • NLSRTL 版本 10.2.0.5.0 - 生產

執行這兩個句子都會返回錯誤:

c:\> sqlplus
SQL> conn / as sysdba
Insufficient privileges
SQL> connect system/****
Account locked

遠端電腦是安裝數據庫的地方,所以我沒有連接到遠端數據庫。windows 使用者帳戶屬於 Administrator 和 Ora_DBA Windows 組。

Db 只有一個使用者可用(我們開發的應用程序使用的那個),但它沒有足夠的權限來更改 SYSTEM 帳戶並解鎖它。

我不知道我還能做什麼,因為我無法以管理員身份連接到 de db。我希望我已經為我的問題提供了足夠的數據,如果我遺漏了什麼,請詢問。

**編輯:**我再次檢查了 Windows 使用者成員資格:管理員、ora_dba、使用者和“遠端工作場所使用者”(希望我已經翻譯了最後一項)。 PWD%ORACLE_SID%.ora文件不存在(假設這是正確的)。

**EDIT2:**我正在連接到本地數據庫。我找到了 3 個安裝的 SQLPLUS:一個來自 Oracle Forms 6i(是的,我知道它確實是舊版本),另一個來自 Oracle 10 客戶端,最後一個來自 Oracle 10 DB。HKLM/SOFTWARE/ORACLE正如我在評論中所讀到的,我不知道在 中尋找 ORACLE_HOME 。在系統資料庫中,我找到的所有條目都指向 Oracle Forms 文件夾。我嘗試使用完整路徑執行sqlplus,屬於數據庫安裝的sqlplus,最後我已經連接conn / as sysdba並執行了解鎖帳戶語句,所以問題解決了,因為我的目標是解鎖系統帳戶。

windows 使用者帳戶屬於 Administrator 和 Ora_DBA Windows 組。

仔細檢查這一點,因為當您不是 ora_dba 組的成員時,您會收到上述錯誤。

檢查%ORACLE_HOME%/network/admin/sqlnet.ora以下行:

SQLNET.AUTHENTICATION_SERVICES=(NTS)

如果設置為NONE,則禁用使用 登錄/ as sysdba,但會導致ORA-01017: invalid username/password; logon denied錯誤。

最後,SYS密碼儲存在數據庫之外的一個文件中,在 Windows 上是%ORACLE_HOME%/database/PWD%ORACLE_SID%.ora. 您可以重新創建它(提供新的 SYS 密碼):

orapwd file=%ORACLE_HOME%/database/PWD%ORACLE_SID%.ora force=y

之後,您應該能夠使用給定的密碼登錄:

connect sys/password as sysdba

引用自:https://dba.stackexchange.com/questions/195491