ユーザのパスワード有効期限を、無期限にする手順です。
1.対象のプロファイル確認する
まずは、ユーザに設定されているプロファイルを確認します。
① ユーザ「taro」が使用しているプロファイルを確認する
| 1 2 | select username, profile from dba_users where username = 'TARO'; | 
- 実行例
- USERNAME PROFILE ----------- ------------ TARO DEFAULT
※以下SQLで現在設定されている有効期限を確認できます。
② DEFAULTプロファイルのパスワード有効期限を確認する
| 1 2 3 | select * from dba_profiles where resource_name = 'PASSWORD_LIFE_TIME' and profile = 'DEFAULT'; | 
DEFAULTプロファイル以外の場合は、'DEFAULT'の箇所を①で確認したプロファイル名に読み替えてください。
- 実行例
- PROFILE RESOURCE_NAME RESOURCE_TYPE LIMIT COMMON ---------- ------------------- -------------- ---------- --------- DEFAULT PASSWORD_LIFE_TIME PASSWORD UNLIMITED NO
LIMITが'UNLIMITED'の場合は無期限、180の場合は180日に設定されています。
2.パスワードの有効期限を無期限にする
手順1で、対象のプロファイルを確認したら以下SQLを実行します。
例)DEFAULTプロファイルのパスワードを無期限とするSQL
| 1 | ALTER PROFILE DEFAULT LIMIT password_life_time unlimited; | 
DEFAULTプロファイル以外の場合は、DEFAULTの箇所を上記「対象のプロファイル確認する」で確認したプロファイル名に読み替えてください。
解説
- Oracle11g以降では、ログインパスワードの有効期限はデフォルトで180日となっています。
- 同じプロファイルを使用している全てのユーザの有効期限が無期限になりますので、問題ないことを確認の上実行してください。