Oracle報錯,ORA-28001: 口令已經失效[轉]

來源:互聯網
上載者:User

標籤:

Oracle11G建立使用者時預設密碼到期限制是180天(即6個月), 如果超過180天使用者密碼未做修改則該使用者無法登入。 
Oracle公司是為了資料庫的安全性預設在11G中引入了這個預設功能,但是這個預設的功能很容易被DBA或者是開發人員給疏忽,一旦密碼180天未修改過,就會出現這樣的問題。

方法一(PL/SQL):

1 SELECT * FROM dba_profiles WHERE profile=‘DEFAULT‘ AND resource_name=‘PASSWORD_LIFE_TIME‘
12345678 <br>查詢密碼的有效期間設定,LIMIT欄位是密碼有效天數。<br><br>在密碼將要到期或已經到期時可通過如下語句進行修改密碼,密碼修改後該使用者可正常串連資料庫。<br>ALTER USER 使用者名稱 IDENTIFIED BY 密碼 ;  如果想去除180天的密碼生存周期的限制可通過如下SQL語句將其關閉 ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED 如上SQL語句將口令有效期間預設值180天修改成了“無限制”。但是出於資料庫安全性考慮,不建議將PASSWORD_LIFE_TIME值設定成UNLIMITED

 方法二(cmd命令):

123 (1)在CMD命令視窗中輸入:         sqlplus 使用者名稱/密碼@資料庫本地服務名 as sysdba;(如:sqlplus scott/[email protected] as sysdba;)
123 (2)查看使用者的proifle是哪個,一般是default     sql>SELECT username,PROFILE FROM dba_users;
123 (3)查看對應的概要檔案(如default)的密碼有效期間設定:    sql>SELECT * FROM dba_profiles s WHERE s.profile=‘DEFAULT‘ AND resource_name=‘PASSWORD_LIFE_TIME‘;
12345 (4)將概要檔案(如default)的密碼有效期間由預設的180天修改成“無限制”:          sql>ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; 修改之後不需要重啟動資料庫,會立即生效。
1234567 (5)修改後,還沒有被提示ORA-28002警告的使用者帳號不會再碰到同樣的提示;而已經被提示的使用者帳號必須再改一次密碼,舉例如下:    $sqlplus / as sysdba    sql>alter user 使用者名稱 identified by <原來的密碼> account unlock; ----不用換新密碼 注意:oracle11g啟動參數resource_limit無論設定為false還是true,密碼有效期間都是生效的,所以必須通過以上方式進行修改。

Oracle報錯,ORA-28001: 口令已經失效[轉]

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.