Oracleデータベースが起動していることをどのように確認しますか?


13

このアプリケーションでは、Oracleデータベースに接続するための構成ファイル(URL、ユーザー名、パスワード)があります。

アプリケーションの起動には2〜5分かかります。データベースに問題がある場合、ログにこれが表示されますが、2〜5分待つ必要があります。これは長い時間です。

そのため、データベースがすべて正常でオンラインであることをすばやく簡単に確認する方法を見つけたいと思います。

どうすればいいのかわかりますか?

回答:


16

次のクエリを実行すると、

SELECT INSTANCE_NAME, STATUS, DATABASE_STATUS FROM V$INSTANCE;

返されるはずです:

INSTANCE_NAME    STATUS       DATABASE_STATUS
---------------- ------------ -----------------
YOUR_DBASE       OPEN         ACTIVE

12

ps -ef | grep pmon

PMON(プロセスモニター)プロセスは、他のすべてのバックグラウンドプロセスをチェックします。その後、さらに調査するためにアラートログを確認する必要があります。


4

まず最初に、ステップ2でデータベースに接続するためのユーザー名とパスワードを知っている必要があります。

  1. oracleプロセスの実行を確認します。

    Un * xの場合:

    ps -ef|grep pmon

    Windowsの場合:

    tasklist|findstr /i oracle

    いずれにしてもコマンドが出力を返す場合、つまり、pmon / oracleプロセスが環境で実行されている場合、データベースが実行されています。

  2. 移動しORACLE_HOME/binて実行:

     ./sqlplus /nolog

    ログイン後にエラーが発生した場合、データベースは実行されません。

    SQL*Plus: Release 11.2.0.1.0 Production on Sat Feb 31 21:61:61 2014
    Copyright (c) 1982, 2014, Oracle.  All rights reserved.
    Enter user-name: oracle
    Enter password: 
    ERROR:
    ORA-01034: ORACLE not available
    ORA-27101: shared memory realm does not exist
    Linux-x86_64 Error: 2: No such file or directory
    Process ID: 0
    Session ID: 0 Serial number: 0

1
WindowsがSQLPLUSの開始になります。sqlplus / nologを
イゴールVuković

3

サーバーに接続してデータベースがオンラインかどうかを確認するスクリプトを使用/作成する必要があります。ここでは、Oracleの担当者がお手伝いします。バッチ/シェルスクリプトから実行し(SQLコマンドラインからのスクリプトの実行を参照)、出力を確認します。あなたがあなたの答えを持っているよりもすべてが大丈夫なら。

または、SQL * Plusクライアントで試してください。


0

データベースに対して実際のクエリを実行することも賢明かもしれません。これにより、接続とクエリの両方が可能になります。私はそれを非常にシンプルで高速なものにします:

SELECT pk_column 
  FROM sometable
WHERE rownum <= 1

0

PMONはすべてのbgプロセスをチェックします

ps -ef|grep pmon

さらに、データベースが実行されているかどうかを確認できます。

ps -ef|grep mydb

-1

一般的なデータベースのステータスを確認するには、次のことをお勧めします。

  1. データベースプロセスが実行されているかどうかを確認します。たとえば、Unixシェルから次のコマンドを実行します。

    $ ps -ef | grep pmon

    実行中のデータベース、起動時間、各ユーザーが起動したOracleユーザーが表示されます。

  2. $ ps -ef | grep tnsおよびを使用してリスナーが実行されているかどうかを確認します$ lsnrctl status LISTENER

  3. 選択するgv$resource_limitと、データベースが設定された制限に達したかどうかが表示されます。

  4. データベースエラーがあったかどうかを確認するには、を確認する必要がありますalert.log

詳細については、私のブログ投稿を参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.