Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

OracleDB

ORA-28000エラーの解除方法と発生原因について

投稿日:2020年9月16日 更新日:

<目次>

(1) 記事の目的
 (1-1) エラー概要
 (1-2) エラー原因
 (1-3) エラー対策

(1) 記事の目的

(1-1) エラー概要

SQLDeveloperを使ってOracleDBに接続しようとした際に、正しい接続情報を入力しましたが次のエラーが起きました。

ステータス:失敗 -テストが失敗しました:ORA-28000: the account is locked

(※注)上記は「接続」ではなく「テスト」押下時のメッセージ例ですが、内容的は同じです

(図111)

目次にもどる

(1-2) エラー原因

エラーメッセージに記載されている通り、アカウントがロックされてしまった事が原因です。次の(1-3)でその解除方法を紹介します。

目次にもどる

(1-3) エラー対策

①SQL*Plus実行ファイルの検索
コマンドプロンプト(cmd)を開いて、次のコマンドを実行してSQL*Plusの実行ファイル(sqlplus.exe)の場所を検索します。

> where sqlplus*

(図131)①

②階層を移動
先ほど調べた階層にcdコマンドで移動します。

(図131)②

> cd [上記①で調べたパス]

③SQL*Plusへ接続
次のコマンドでSQL*Plusに接続します。SYSユーザにSYSDBA権限で接続するという意味です。”change_on_install”はSYSユーザのパスワードです。

> sqlplus sys/change_on_install as sysdba

(図131)③

④ロックされたユーザの確認
次のSELECT文でロックされているユーザーを確認します。

select username, account_status, lock_date from dba_users
where account_status <> 'OPEN';

(図131)④

照会結果が次のように表示されます。結果からSYSTEMユーザーがLOCKEDのステータスになっている事が読み取れます。
LOCKED(TIMED)の場合は、誤ったパスワードが複数回入力されたため、安全のためにロックしたという意味です。参考までに、パスワード失効の場合は「EXPIRED(GRACED)」と表示されます。

(図131)⑤

⑤ロック解除
次のALTER文でユーザーのロックを解除します。「ALTER USER」でDBのユーザーに変更を加える、という意味で「ACCOUNT UNLOCK」でロック解除を意味しています。
(図131)⑥

> alter user SYSTEM account unlock;

⑥接続チェック
再度、エラーとなった接続を試します。左下に「ステータス:成功」と表示されているのでOKです。
(図131)⑦

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-OracleDB

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

SQLでCASE文の結果をWHERE句に指定する方法およびコスト面の考察

本記事では、 ・SQLでCASE文の結果をWHERE句に指定する方法について記述します。 ・CASE文を使う場合のコストについて考察します。 (0)目次&概説 (1) NG例 (2) OK例&解説 ( …

APサーバ(Java)⇒DBサーバ(OracleDB 11g)へJDBC接続する方法まとめ

(0)目次 (1) 前提条件 (2) JDBCドライバーのインストール  (2-1) JDBCドライバーをダウンロード  (2-2) APサーバにアップロード・解凍 (3) プログラムの実装  (3- …

OracleデータベースとSQL Serverを冗長性の機能面での比較検討

(0)目次 (1) 冗長性の機能(Oracle)  (1-1) Oracle RAC  (1-2) Oracle Fail Safe (2) 冗長性の機能(SQL Server)  (2-1) Alw …

Linuxサーバ(CentOS6)にOracleDB11gをインストールする(その4)

掲題の通り、LinuxにOracleDB(11g)をインストールする方法について書きます。 「(その3)」の続編記事です。 https://rainbow-engine.com/2017/05/05/ …

Tomcatを使ったフォーム認証でユーザ情報をデータベース管理する方法

<目次> (1) Tomcatを使ったフォーム認証でユーザ情報をデータベース管理する方法  (1-1) 前提条件  (1-2) STEP1:context.xmlにコネクションプールを設定  (1-3 …

  • English (United States)
  • 日本語
Top