Oracle データベースの検出

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:16分
  • ディスカバリーUNIX または Windows のオペレーティングシステムで実行されている Oracle データベースインスタンスを識別できます。また、Real Application Cluster (RAC) を実行する Oracle Clusterware を検索することもできます。

    パターンが Oracle インストールの検出を実行します。そのようなパターンは新しいインスタンスのプローブを複数置き換えます。プローブを引き続き使用する場合は、水平ディスカバリープローブを非アクティブ化することで、パターンを起動し、必要なプローブを有効にすることができます。
    注:
    Unix 上の Oracle DB および Windows 上の Oracle DB は、RAC シングルノードディスカバリーをサポートしていません。
    Oracle DB on Unix および Oracle DB on Windows のパターンは Oracle パターン拡張 [カタログ情報の取得] を使用してカタログオブジェクトを検出します。詳細については、「Oracle カタログディスカバリー」を参照してください。データベースカタログディスカバリーの一般的な情報については、 データベースカタログを参照してください。
    注:
    プローブからパターンへの移行の詳細については、 ナレッジ記事「KB0694477」を参照してください。

    認証情報

    次の認証情報を設定します。
    認証情報タイプ 追加情報

    適用可能な認証情報

    適用可能な認証情報は、次の 2 つのユースケースで必須です。
    • リモートの Oracle DB インスタンスに対する SQL クエリの実行
    • データベースリンクへの接続を作成する場合
    • ソフトウェア資産管理が有効になっている場合
    データベースのインストール時に設定したデータベースユーザーを追加する必要があります OracleOracle インスタンス [cmdb_ci_db_ora_instance] を CI タイプに指定します。

    ユーザーには tnsnames.ora パラメーターファイルへのアクセス権も必要です。tnsnames.ora が正しく構成され、ターゲット Windows ホストの Oracle パスに存在することを確認します。また、使用するディスカバリー認証情報が tnsnames.ora ファイルを読み込むことができることを確認します。

    ユーザーには、SQL*Plus コマンドラインツールの権限と、以下のテーブルに対して SELECT クエリを実行する権限が必要です。
    • PRODUCT_COMPONENT_VERSION
    • V$VERSION
    • V$DATABASE
    • V$PARAMETER
    Windows 認証情報 また、適用可能な認証情報に加えて、Windows と SSH の認証情報を使用することもできます。Windows の認証情報の場合、ユーザーは tnsnames.ora ファイルの読み込み権限を有している必要があります。SSH の認証情報では、oratab ファイルの読み込み権限とシステムパラメーターファイルの読み込み権限を許可する必要があります。

    ディスカバリーとサービスマッピングに必要な特権コマンドのリストについては、「 特権ユーザーを必要とする サービスマッピング コマンド」を参照してください。このリストには、組織内の Unix ベースのホストを検出およびマッピングするために昇格された権限が必要なコマンドが含まれています。

    SSH 認証情報

    その他の要件

    ディスカバリーora_pmon_で始まるプロセスからUNIX上のOracleデータベースの実行中のインスタンスを識別します。このプロセスが、ディスカバリーに指定した IP 範囲で実行されていることを確認します。ディスカバリー は、oracle.exeプロセスからWindowsOracleデータベースの実行中のインスタンスを識別します。このプロセスが指定した IP 範囲で実行されていることを確認してください。

    Oracle Clusterware の場合、ホスト名を IP アドレスに関連付ける /etc/hosts/ ファイルを読み込む権限も必要です。

    Oracle Clusterware では次のコマンドが実行されます。
    コマンド 説明

    ps -ef | grep 'crsd.bin' |grep -v grep

    CRS プロセスが実行されている Oracle を確認します。

    ps -ef |grep LISTENER | grep -v $$ | head -1 | awk '{print $8}'

    Oracle家に帰る。

    /u01/app/12.1.0.2/grid/bin/olsnodes -c | egrep -v 'error|return code'

    CRS クラスター名 Oracle を取得します。

    /u01/app/12.1.0.2/grid/bin/crsctl query crs softwareversion| egrep -v 'error|return code'

    Oracle CRS クラスター ID を取得します。

    /u01/app/12.1.0.2/grid/bin/crsctl query crs softwareversion| egrep -v 'error|return code'

    Oracle CRS バージョンを取得します。

    /u01/app/12.1.0.2/grid/bin/olsnodes | egrep -v 'error|return code'

    Oracle CRS ノードを取得します。

    /u01/app/12.1.0.2/grid/bin/crsctl status server | egrep -v 'error|return code'

    Oracle CRS ノードステータスを取得します。

    /u01/app/12.1.0.2/grid/bin/crsctl stat res -f | tr '\n' '#'

    Oracle CRS リソースを取得します。
    /u01/app/12.1.0.2/grid/bin/crsctl stat res -p | grep -v CHECK_R |grep -v error |grep -v failed Oracle CRS VIP リソースを取得します。

    /u01/app/12.1.0.2/grid/bin/srvctl config scan | tr '\n' ‘ '

    Oracle RAC SCAN VIP 構成を取得します。

    /u01/app/12.1.0.2/grid/bin/srvctl config vip -node ol7-121-rac1| egrep ' Name' | awk '{print $3}'

    Oracle CRS VIP の名前を取得します。

    /u01/app/12.1.0.2/grid/bin/srvctl config vip -node ol7-121-rac1| grep ' IPv4 Address:' | awk '{print $4}'

    Oracle CRS VIP ip_addressを取得します。
    sudo /u01/app/12.1.0.2/grid/bin/ocrcheck | egrep -v 'error|return code' を実行する Sudo 権限

    分類子、プローブ、パターン

    ディスカバリーOracle データベースの検出に次の分類子、プローブ、およびパターンを使用します。
    分類子 トリガープローブ パターン
    Oracle インスタンス
    • 水平ディスカバリープローブ:パターンを起動します。
    • Powershell-Oracle - インスタンス PFile (Windows 用)*
    • Powershell-Oracle - インスタンスバージョン (Windows 用)*
    • SSHCommand-Oracle - インスタンスの詳細 (Linux 用)*
    アプリケーションパターン:
    • Windows 上 Oracle DB パターン
    • UNIX 上 Oracle DB のパターン

    Linux サーバーパターンで使用される、この共有ライブラリーパターン:

    UNIX クラスター - ORACLE Clusterware
    注:
    この共有ライブラリパターンは、 crsd.bin プロセスが Oracle データベースサーバーで実行されている場合にトリガーされます。
    Oracle リスナー SSHCommand-Oracle - リスナーの詳細 なし
    * 新しいインスタンスで非アクティブなプローブ

    パターンを使用するには、分類子の水平パターンプローブに正しいパターンが指定されていることを確認します。手順については、「分類子への水平パターンプローブの追加」を参照してください。

    収集されるデータ

    Oracle インスタンス [cmdb_ci_db_ora_instance] テーブルで、 UNIXWindows の両方について次のデータが収集されます。
    表 : 1. UNIXマシンで収集されるデータ
    ラベル フィールド名 追加情報
    SID sid ora_pmon_ で始まるプロセスの名前から取得されます。
    インストールディレクトリー install_directory ORA_HOME のパスから取得されます。
    バージョン version 次の順序で取得されます。
    • ORA_HOME/bin/sqlplus /NOLOG コマンドの出力から
    • ORA_HOME/bin/lsnrctl ステータスコマンドの出力から
    • ORA_HOME のパスから
    パラメーターファイル pfile システムパラメーターファイルの場所について、次の場所が探索されます。探索した場所のいずれかにこのファイルが存在しない場合、ディスカバリーはファイルを見つけることができず、エラーを報告します。
    • oracle_home/dbs/spfileSID.ora
    • oracle_home/dbs/spfile.ora
    • oracle_home/dbs/initSID
    Oracle ホーム oracle_home ORATAB ファイルから取得されます。
    エディション edition context.xml ファイルから取得されます。
    名前 name SID@ホスト名」形式の SID 名とホスト名の組み合わせ。
    TCP ポート tcp_port tnsnames.ora ファイルまたは lsnrctl status コマンドから取得されます。有効な情報が取得されない場合は、デフォルトのポート 1521 が割り当てられます。
    注:
    パターン拡張と収集されたその他の情報については、「Oracle オプション」を参照してください。
    表 : 2. Windowsマシンで収集されるデータ
    ラベル フィールド名 追加情報
    SID sid oracle.exe プロセスに渡されるプロセスパラメーターから取得されます。
    インストールディレクトリー install_directory
    バージョン version ORA_HOME/bin/sqlplus.exe -V コマンドの出力から取得されます。
    パラメーターファイル pfile システムパラメーターファイルの場所について、次の場所が探索されます。探索した場所のいずれかにこのファイルが存在しない場合、ディスカバリーはファイルを見つけることができず、エラーを報告します。
    • oracle_home\database\spfileSID.ora
    • oracle_home\database\spfile.ora
    • oracle_home\database\initSID
    Oracle ホーム oracle_home oracle.exe のパスから解析されます。
    エディション edition
    注:
    パターン拡張と収集されたその他の情報については、「Oracle オプション」を参照してください。

    Oracle オプション

    Oracleオプションの一般的な情報については、「https://docs.oracle.com/en/」を参照してください。

    ディスカバリーは、従来のパターン拡張である Windows/Unix 用 Oracle オプション拡張を使用して、インスタンスで有効にした Oracle オプションを検索することもできます。Oracleオプションを検出するには、Oracle 向けソフトウェア資産管理プロ (com.snc.samp.oracle) プラグインが必要です。

    表 : 3. Oracle オプション [samp_oracle_options]
    ラベル フィールド名
    インスタンス インスタンス
    オプション option
    ライセンス可能 ライセンス可能
    現在使用されている currently_used
    最初の使用日 first_usage
    前回の使用日 last_usage
    最後のサンプル日付 last_sample
    検出された使用率 detected_usage
    サンプル間隔 sample_interval
    必要なテーブル権限 追加情報
    次のテーブルには、UNIXWindows の Oracle オプションの拡張機能の一部としてアクセスされます。
    • DBA_FEATURE_USAGE_STATISTICS
    • CDB_FEATURE_USAGE_STATISTICS
    • V$DATABASE
    • V$VERSION
    • GV$PARAMETER
    • V$CONTAINERS
    • V$INSTANCE
    次のパターン拡張では、 Oracle スクリプトを使用します。 options_packs_usage_statistics.sql。この sql スクリプトは、DB サーバーバージョン 11.2 以降を対象としています。スクリプトを実行するには、Select Any Dictionary 権限が必要です。スクリプトの使用方法に関する詳細については、https://support.oracle.com/portal/ にあるサポートドキュメント ID 13172651.1 を参照してください。
    • UNIX の Oracle オプション拡張
    • Windows の Oracle オプション拡張
    表 : 4. Clusterware で収集されるデータ
    テーブル ラベルとフィールド名
    Unix クラスター [cmdb_ci_unix_cluster]

    名前 [name]

    クラスターステータス [cluster_status]

    クラスタータイプ [cluster_type]

    IP アドレス [ip_address]

    簡単な説明 [short_description]

    クラスター ID [cluster_id]

    クラスターバージョン [cluster_version]

    cmdb_ci_unix_cluster_node

    名前 [name]

    ノードステータス [node_state]

    IP アドレス [ip_address]

    ノードステータス [node_status]

    cmdb_ci_unix_cluster_resource

    名前 [name]

    リソースタイプ [resource_type]

    リソースステータス [resource_status]

    プロパティ [properties]

    cmdb_ci_cluster_vip

    名前 [name]

    IP アドレス [ip_address]

    クラスター名 [cluster_name]

    クラスター ID [cluster_id]

    依存関係ビューで、Oracle データベースサーバーの +1 は、それがクラスターの一部であることを示しています。

    Extend Oracle Instance 拡張

    注:
    ディスカバリー は、Extend Oracle Instance 拡張を使用してインスタンスの追加属性を検索することもできます。https://docs.oracle.com/en/ オプションの詳細については、Oracle Web サイトを参照してください。ディスカバリーは、これらの属性を Oracle インスタンス [cmdb_ci_db_ora_instance] テーブルに保存します。
    ラベル フィールド名
    インスタンス インスタンス
    ホスト名 host_name
    IS_CDB cdb_yn
    DB の一意の名前 db_unique_name
    DB 名 database_name
    有効化されたレプリケーション replication_enabled
    必要なテーブル権限 追加情報
    次のテーブルは、UNIXWindows の Extend Oracle Instance 拡張の一部としてアクセスされます。
    • V$DATABASE
    • V$INSTANCE
    Extend Oracle Instance 拡張をインストールする必要があります。この拡張は、Discovery and Service Mapping Patterns アプリケーションのバージョン 1.0.72 以降に含まれています。これらのアプリケーションは ServiceNow Store からダウンロードできます。

    Oracle 仮想マシン上のインスタンス

    Oracle インスタンスが仮想マシンでホストされている場合、システムによって CI 間に関係が作成されます。
    CI 関係 CI
    Oracle インスタンス サービスオファリング元 コンピューター [cmdb_ci_computer] またはサーバー [cmdb_ci_server]
    注:
    これは仮想マシンです。[仮想] フィールドは [true] です。
    コンピューター [cmdb_ci_computer] またはサーバー [cmdb_ci_server]
    注:
    これは仮想マシンです。[仮想] フィールドは [true] です。
    仮想化担当: コンピューター [cmdb_ci_computer] またはサーバー [cmdb_ci_server]
    注:
    これは仮想マシンではありません。

    OracleAWS または Azure クラウドでホストされている仮想マシン上のインスタンス

    基底クラス 関係 依存クラス
    Oracle インスタンス サービスオファリング元 コンピューター [cmdb_ci_computer]
    注:
    これは仮想マシンです。[仮想] フィールドは [true] です。
    コンピューター [cmdb_ci_computer]
    注:
    これは仮想マシンです。[仮想] フィールドは [true] です。
    仮想化担当: コンピューター [cmdb_ci_computer]
    注:
    これは仮想マシンではありません。
    コンピューター [cmdb_ci_computer]
    注:
    これは仮想マシンです。[仮想] フィールドは [true] です。
    仮想化担当: 仮想マシンインスタンス [cmdb_ci_vm_instance]
    注:
    vCPU カウントはこのテーブルに入力されます。
    仮想マシンインスタンス [cmdb_ci_vm_instance] サービスオファリング元 AWS データセンター [cmdb_ci_aws_datacenter] または Azure データセンター [cmdb_ci_azure_datacenter]

    Clusterware の関係

    CI 関係 CI
    Unix クラスター [cmdb_ci_unix_cluster] Virtualizes::Virtualized by クラスター仮想 IP [cmdb_ci_cluster_vip]
    Unix クラスターリソース [cmdb_ci_unix_cluster_resource] Defines resources for::Gets resources from Unix クラスターノード [cmdb_ci_unix_cluster_node]
    クラスター仮想 IP [cmdb_ci_cluster_vip] Uses::Used by Unix クラスターノード [cmdb_ci_unix_cluster_node]
    Unix クラスターノード [cmdb_ci_unix_cluster_node] Cluster of::Cluster Unix クラスター [cmdb_ci_unix_cluster]
    Unix クラスターノード [cmdb_ci_unix_cluster_node] Hosted on:Hosts Unix クラスター [cmdb_ci_unix_cluster]
    Unix クラスターリソース [cmdb_ci_unix_cluster_resource] Defines resources for::Gets resources from Unix クラスター [cmdb_ci_unix_cluster]

    Unix クラスター [cmdb_ci_unix_cluster]

    Hosts::Hosted on Linux サーバー [cmdb_ci_linux_server]
    Unix クラスターノード [cmdb_ci_unix_cluster_node] Hosted on::Hosts Linux サーバー [cmdb_ci_linux_server]