Linux

Oracle sys 密碼失去

  • August 22, 2014

我從離開公司的某個人那裡繼承了 Linux Redhat 上的 Oracle DB,並且沒有告訴任何人數據庫本身(不是 Linux)上各種帳戶的密碼是什麼,包括他將 oracle DB sys 帳戶設置為的密碼。

但是目前伺服器上正在執行一個生產應用程序,所以我不想刪除密碼文件來重置它,因為這會破壞生產應用程序。

我擁有對 Linux 伺服器的完整(root)訪問權限;Linux 伺服器密碼不是問題。我知道我過去做過一次,但我不記得我是如何獲得控制權的,而Google指的是要麼刪除文件,要麼通過另一個使用者更改密碼,這兩者都不是真正的選擇。

好吧,如果您對數據庫主機具有完全訪問權限,則無需刪除並重新創建密碼文件。

根據數據庫管理員指南中的使用作業系統身份驗證dba部分,以作業系統使用者身份登錄,該使用者是nix 上的組或Windows 上的組的成員,並使用具有或權限的ora_dbaSQLPlus 連接到 Oracle 數據庫實例應該可以解決問題。SYSDBA``SYSOPER

$ ssh root@orcldbxe1
[root@orcldbxe1 ~]# su - oracle
[oracle@orcldbxe1 ~]$ groups
oinstall wheel dba
[oracle@orcldbxe1 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.2.0 Production on Fri Aug 22 08:22:35 2014

Copyright (c) 1982, 2011, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

SQL> select status from v$instance;

STATUS
------------
OPEN

SQL>

這就是為什麼它被稱為作業系統身份驗證——你使用作業系統組。簡單方便,無需記住密碼。我總是用它。

進入後,您可以重置密碼並執行其他管理任務。

SQL> alter user spongebob identified by s3cr3t;

db-user 密碼位於 dba_users (10g) 或 sys.user$ (11g) 中。沒有給您密碼,但您需要以 db-user (SCOTT) 身份登錄。

例如。甲骨文 11g

從 sys.user$ 中選擇密碼,其中 name=‘SCOTT’;– 保存這個 EXISTIMG 加密密碼。F123458D5B67

修改由tiger辨識的使用者scott;– 這是您剛剛創建的新密碼。

conn scott/tiger——在這裡做你的事情。– 完成後,再次重置原始密碼。

更改由值“F123458D5B67”標識的使用者 scott;

– 希望Scott 的配置文件允許他重用相同的密碼,否則您將不得不更改DBA_PROFILES 中PASSWORD_REUSE_TIME 的LIMIT。

祝你好運…

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