2020-03-06

Oracleでアカウントがロックされたら

Oracle

ユーザがロックされちゃった!
そんなとーきーは~

SYS じゃなくても oracle ユーザで sqlplus が打てれば入れる

SYS じゃなくても oracle ユーザでsqlplusが呼び出せればとりあえず DB に接続できます。

sqlplus /nolog  

ロックされたユーザの確認

次にSYSDBAにスイッチして、ユーザの状態を確認します。

-- sysdbaになる  
connect / as sysdba  
-- 対象ユーザの状態を確認(下記の例はSYSがユーザ名) ロックされたユーザは ACCOUNT_STATUS が LOCKEDになる  
SELECT USERNAME,USER_ID,ACCOUNT_STATUS FROM DBA_USERS WHERE USERNAME = 'SYS';  

ユーザのアンロック

alter でアカウントステータスを変更します。

-- 対象ユーザをアンロック(下記の例はSYSがユーザ名)  
ALTER USER SYS ACCOUNT UNLOCK;  

これで作業は完了です。

ロックされている全ユーザを確認するには

ロックされている全ユーザを確認するには、ステータスが OPEN じゃないユーザを探せばよいです。
ロック時間で並び替えると、最近ロックされたユーザがわかりやすくなります。

SELECT USERNAME,ACCOUNT_STATUS,LOCK_DATE FROM DBA_USERS WHERE ACCOUNT_STATUS <> 'OPEN' ORDER BY LOCK_DATE;  

パスワードわからないんだけど!

パスワードが分からなければ再設定。

-- SYSユーザのパスワードを `oracle` に変更する  
ALTER USER sys IDENTIFIED BY oracle;  

参考資料

オラクルアカウントロック解除の方法 - 日々のメモ
https://blog.goo.ne.jp/gets2004jp/e/a0e6b588906ef93ced19ec889422967e

ORACLE  アカウントがロックされたら - 朧の.NET の足跡
https://www.oborodukiyo.info/ORACLE/12c/ORA-AccountLock


猫派 / 基本インドア / ガジェット大好き / RDP推進派
コロナ禍の趣味はPC+VRでゲーム。
最近のゲーム:Factorio / BeatSaber / にゃんこ大戦争

→ Policy