22 Oracle Trace File Analyzerのトラブルシューティング
この項では、Oracle Trace File Analyzerの問題の診断および修正について説明します。
- tfactl statusコマンドを実行して表示するとクラスタ・ノードが単一クラスタとして表示されない
- 再起動後にOracle Trace File Analyzerが起動されず、init.tfaスクリプトが欠落している
- @incで****が見つかりません(@incには次が含まれます:....)のようなエラー・メッセージ
- リリース更新リビジョン(RUR)以外のOracle Trace File Analyzerのパッチ適用がリモート・ノードで失敗する
- インストール後に非rootアクセスが有効化されない
- パッチ適用またはアップグレード後にTFA_HOMEおよびリポジトリの場所が移動される
- 2015年7月以降のリリース更新リビジョン(RUR)の適用後にOracle Trace File AnalyzerがTFA-00103で失敗する
- 再起動後に、またはそれ以外の場合に予期せずOSWatcherパラメータが異なる
- Linux 7でOracle Trace File AnalyzerのインストールまたはOracle Trace File Analyzerの検出(tfactl rediscover)が失敗する
- OSWatcherがTFA_HOMEから実行されていない場合にOSWatcher Analyzerが失敗する
- Java例外com.sleepycat.je.EnvironmentLockedExceptionでOracle Trace File Analyzerが起動に失敗する
- システム上にSolution-Soft社のTime Machineソフトウェアをインストール済だが実行していない場合にOracle Trace File Analyzerが起動に失敗する
- 非特権ユーザーはtfactlコマンドを実行不可か。
- Oracle Trace File Analyzerデーモンが起動しないか実行されない
22.1 tfactl statusコマンドを実行して表示するとクラスタ・ノードが単一クラスタとして表示されない
原因: 証明書が同期化されていません。
処理: 手動で鍵を同期化します。
いずれかのクラスタ・ノードに移動し、synctfanodes.sh
スクリプトをroot
として実行します。
# $GIHOME/tfa/nodename/tfa_home/bin/synctfanodes.sh
注意:
このスクリプトは、SSHおよびSCPを使用します。root
にパスワードなしSSHが設定されていない場合、Oracle Trace File Analyzerは、コマンドが実行されるたびにパスワードをノードごとに3回求めます。
ノード上でExpectユーティリティが使用可能な場合、Oracle Trace File AnalyzerはExpectを使用します。これにより、パスワードを求める回数が減少します。
22.2 再起動後にOracle Trace File Analyzerが起動されず、init.tfaスクリプトが欠落している
説明: Linux6以降でinit.tfa
がinit
またはSystem D
から実行された際に、Oracle Trace File Analyzerのバイナリが格納されているTFA_HOME
のあるファイル・システムがマウントされていませんでした。
原因: 多くの原因があるため、次のみに制限されません。
-
メンテナンスやパッチ適用のためにファイル・システムのマウントが無効化されていた
-
ファイル・システムに関連する問題やエラー
-
NFSがアクセス不可のネットワーク
-
TFA_HOME
のあるファイル・システムのマウントが遅い
処理: My Oracle Supportノート2224163.1を参照して、この問題を解決してください。
22.3 @incで****が見つかりません(@incには次が含まれます:....)のようなエラー・メッセージ
原因: 古いバージョンのPerlを使用すると、このエラーが発生します。
処理: Oracle Trace File Analyzerでは、Perlバージョン5.10以降が必要です。このようなエラーが発生した場合は、Perlをバージョン5.10以降にアップグレードします。
インストール後、tfa_home/tfa_setup.txt
ファイル内のPerlの場所を更新して、新しい場所を指定します。
PERL=/u01/perl/bin/perl
インストール中に問題が発生した場合は、-perlhome dir
インストール・オプションを使用します。
指定するディレクトリには、/bin/perl
を含める必要があります。root
としてPerlをインストールする場合、root
がPerlの実行可能ファイルを所有している必要があります。
# which perl
/usr/bin/perl
# ./installTFA-LINUX -perlhome /usr
22.4 リリース更新リビジョン(RUR)以外のOracle Trace File Analyzerのパッチ適用がリモート・ノードで失敗する
原因: Oracle Trace File AnalyzerをOracle Trace File Analyzerのソケットを介してアップグレードすると、ソケットの問題が原因で、リモート・ノードでのアップグレードが失敗します。
説明: アップグレードが完了したら、すべてのノードのバージョン、ビルドID、およびステータスが同じであるか、レポートをクロスチェックします。
.-------------------------------------------------------------.
| Host | TFA Version | TFA Build ID | Upgrade Status |
+-------+-------------+----------------------+----------------+
| node1 | 12.1.2.6.0 | 12126020151019114604 | UPGRADED |
| node2 | 12.1.2.6.0 | 12126020151019114604 | UPGRADED |
'-------+-------------+----------------------+----------------'
次のような相違がある場合は、問題を修正する必要があります。
.--------------------------------------------------------------.
| Host | TFA Version | TFA Build ID | Upgrade Status |
+-------+-------------+-----------------------+----------------+
| node1 | 12.1.2.6.0 | 12126020151019114604 | UPGRADED |
| node2 | 12.1.2.3.0 | 12120020140619094932 | NOT UPGRADED |
'-------+-------------+-----------------------+----------------'
処理: アップグレードに失敗したすべてのノードにOracle Trace File Analyzerのインストーラをコピーし、これらのノードでインストーラをローカルで実行します。
./installTFALite –local
バイナリをアップグレードした後、アップグレードを開始したノードからルートSSL証明書を置換します。
既存の構成ノードから、追加対象のノードに次のファイルをコピーします。追加対象のマシン上のroot
に対する、これらのファイルの権限を700
に変更します。
tfa_home/server.jks
tfa_home/client.jks
tfa_home/internal/ssl.properties
22.5 インストール後に非rootアクセスが有効化されない
説明: 非rootアクセスが有効な場合は、Oracle Grid Infrastructureソフトウェア所有者の非rootアクセスがデフォルトでアクティブ化されている必要があります。
処理: Oracle Trace File Analyzerに対する非rootアクセスを有効にするには、tfactl access add -user
コマンドをroot
として実行します。
次に例を示します。
tfactl access add -user xyx
コマンドを実行すると、非rootユーザー・グループxyzのOracle Trace File Analyzerへのアクセスが有効になります。
22.6 パッチ適用またはアップグレード後にTFA_HOMEおよびリポジトリの場所が移動される
説明: バージョン12.1.2.6.0より前のOracle Trace File Analyzerでは、既存の独立型のOracle Trace File Analyzerがインストールされている場合(GRID_HOME
の外部にインストールされたMOSバージョン)、Oracle Trace File Analyzerは、Oracle 12.1.0.2の一部としてOracle Grid Infrastructureとともにパッチが適用され、TFA_HOME
がGRID_HOME
に移動され、リポジトリ・ディレクトリがOracle Grid Infrastructure所有者のOracleベース・ディレクトリに移動されます。
リポジトリ・ディレクトリがデフォルト以外の場所に変更されると、変更内容は失われます。
-
Oracle Trace File Analyzerのzipファイルのリポジトリの場所を必要なベース・ディレクトリに設定するには、
tfactl set repositorydir
コマンドを実行します。 -
Oracle Trace File Analyzerリポジトリの最大サイズを変更するには、
tfactl set reposizeMB
コマンドを実行します。
Oracle Trace File Analyzerバージョン12.1.2.6.0以降では、TFA_HOME
がGRID_HOME
の外部に存在する場合、リリース更新リビジョン(RUR)のインストールの一環として、Oracle Trace File Analyzerのインストールが移動されます。ただし、リリース更新リビジョン(RUR)にOracle Trace File Analyzerの新しいバージョンがある場合、Oracle Trace File Analyzerは、現在の場所でアップグレードされます。
Oracle Trace File AnalyzerがGRID_HOME
にインストールされていて、GRID_HOME
がパッチ適用の一環として移動されている場合、既存のTFA_HOME
は新しいGRID_HOME
に移行され、必要に応じてアップグレードされます。
22.7 2015年7月以降のリリース更新リビジョン(RUR)の適用後にOracle Trace File AnalyzerがTFA-00103で失敗する
Oracle Trace File Analyzerのアップグレードのフェーズ1
12.1.2.4.1より後のバージョンのOracle Trace File Analyzerでは、通信モデルが変更されています。通信上の問題を回避するために、Oracle Trace File Analyzer構成のすべてのノードで、Oracle Trace File Analyzerの通信の変更を完了する必要があります。Oracle Trace File Analyzerは、リリース更新リビジョン(RUR)適用の一環として各ノードでローカルにアップグレードされます。リリース更新リビジョン(RUR)プロセスは、新しいソフトウェアを適用してOracle Trace File Analyzerを再起動しますが、新しい接続モデルを実装しません。
Oracle Trace File Analyzerのアップグレードのフェーズ2
新しい通信モデルを自動的に実装する前に、Oracle Trace File Analyzerは、すべてのノード上でのリリース更新リビジョン(RUR)の適用が完了するのを24時間待機します。すべてのノードでOracle Trace File Analyzerがアップグレードされたら、10分以内にフェーズ2を実行する必要があります。すべてのノードにリリース更新リビジョン(RUR)が適用される(フェーズ1)まで、Oracle Trace File Analyzerの新しい通信モデルは実装されません(フェーズ2)。
Oracle Trace File Analyzerによって、次のメッセージで示されます。
TFA-00103 - TFA is not yet secured to run all commands.
構成内のすべてのノードでOracle Trace File Analyzerがアップグレードされると(フェーズ1)、Oracle Trace File Analyzerは次の操作を実行します。
-
新しいSSL鍵の生成
-
クラスタ内の有効なノードへの鍵の送信
-
これらの各ノードでのOracle Trace File Analyzerの再起動(フェーズ2)
フェーズ2が完了すると、Oracle Trace File Analyzerは新しい通信モデルを使用してコマンドを正常に処理するはずです。
両方のフェーズが完了し、すべてのノード間でOracle Trace File Analyzerの通信が確立されていることを確認する方法
最初に、root
として次のコマンドを実行します。
tfactl print status
.--------------------------------------------------------------------------------.
| Host | Status | PID | Port | Version | Build ID | Inventory|
+--------+---------+-------+------+------------+----------------------+----------+
| sales1 | RUNNING | 4390 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales2 | RUNNING | 23604 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales3 | RUNNING | 28653 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales4 | RUNNING | 5989 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
'--------+---------+-------+------+------------+----------------------+----------'
すべてのノードのバージョンおよびビルドIDが同じであることが表示されたら、最大約10分以内に鍵の同期を完了する必要があります。
次のコマンドを実行してください。
tfactl print directories
tfactl print directories
を実行すると、Oracle Trace File Analyzerに登録されているディレクトリのリストが返されます。一部のノードで通信が確立されていない場合、コマンドによってTFA is not yet secured to run all commandsというメッセージが返されます。
また、このメッセージはフェーズ2が完了していないことを示します。フェーズ2がまだ完了していないノードを確認するには、各ノードで、次のファイルの存在を確認します。これらのファイルは、root
、およびroot
のownership:group
にのみ読取り可能である必要があります。各ファイルのチェックサムがすべてのノードで一致している必要があります。
# ls -al /u01/app/12.1.0/grid/tfa/sales1/tfa_home/client.jks
-rwx------ 1 root root 3199 Jun 30 14:12 /u01/app/12.1.0/grid/tfa/sales1/tfa_home/client.jks
# ls -al /u01/app/12.1.0/grid/tfa/sales1/tfa_home/server.jks
-rwx------ 1 root root 3201 Jun 30 14:12 /u01/app/12.1.0/grid/tfa/sales1/tfa_home/server.jks
# ls -al /u01/app/12.1.0/grid/tfa/sales1/tfa_home/internal/ssl.properties
-rwx------ 1 root root 220 Jun 30 14:12 /u01/app/12.1.0/grid/tfa/sales1/tfa_home/internal/ssl.properties
選択によって、またはメンテナンスによって一部のノードが停止されているために、すべてのノードを同時にアップグレードしない場合どうなるか。
Oracle Trace File Analyzerは、すべてのノードでアップグレードが完了するまで、または24時間が経過するまで、フェーズ2の操作が完了するのを待機します。
24時間後に、Oracle Trace File Analyzerは次の操作を実行します。
-
新しい鍵の生成
-
アップグレードされたすべてのノードへの鍵のコピー
-
これらのノードでのOracle Trace File Analyzerの再起動
鍵を取得しなかったノードはすべて、Oracle Trace File Analyzer構成の外部にあります。Oracle Trace File Analyzerをアップグレードしたら、鍵を手動で他のノードと同期化します。
すべてのノードでリリース更新リビジョン(RUR)の適用が24時間以内に完了した場合は、鍵を手動で同期化します。
手動で鍵を同期化するには、フェーズ2を正常に完了したノードに移動し、synctfanodes.sh
スクリプトをroot
として実行します。
# $GIHOME/tfa/nodename/tfa_home/bin/synctfanodes.sh
注意:
このスクリプトは、SSHおよびSCPを使用します。root
にパスワードなしSSHが設定されていない場合、Oracle Trace File Analyzerは、コマンドが実行されるたびにパスワードをノードごとに3回求めます。
ノード上でExpectユーティリティが使用可能な場合、Oracle Trace File AnalyzerはExpectを使用します。これにより、パスワードを求める回数が減少します。
このスクリプトは、Oracle Trace File Analyzerがまだアップグレードされていないノードを含む、Oracle Trace File Analyzer構成内のすべてのノードを表示します。
また、このスクリプトはOracle Grid Infrastructure構成に含まれるノードも表示します。
表示されたノード・リストを確認し、同期するノードをスペース区切りのリストで指定してください。プロセスは冪等であるため、アップグレード済のノードを含めても問題ありません。
次に例を示します。
ノードsales1、sales2、sales3、sales4はすべてOracle Grid Infrastructureの一部です。2015年7月のリリース更新リビジョン(RUR)が適用されるまで、ノードではOracle Trace File Analyzer 12.1.2.0.0が実行されていました。
停止による制限のため、リリース更新リビジョン(RUR)は最初にsales1およびsales3のみに適用されました。
Oracle Trace File Analyzerのアップグレードのフェーズ1の完了後に、print status
を実行します。コマンドを実行すると、一部のノードでOracle Trace File Analyzerの異なるバージョンが実行中であっても、すべてのノードがリストされます。
-bash-3.2# /u01/app/12.1.0/grid/bin/tfactl print status
.--------------------------------------------------------------------------------.
| Host | Status | PID | Port | Version | Build ID |Inventory |
+--------+---------+------ +------+------------+----------------------+----------+
| sales1 | RUNNING | 27270 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales3 | RUNNING | 19222 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales2 | RUNNING | 10141 | 5000 | 12.1.2.0.0 | 12120020140619094932 | COMPLETE |
| sales4 | RUNNING | 17725 | 5000 | 12.1.2.0.0 | 12120020140619094932 | COMPLETE |
'--------+---------+-------+------+------------+----------------------+----------'
Oracle Trace File Analyzerの新しい通信モデルが一部のノードに設定されていないため、root
として実行すると、多くのコマンドが次のメッセージを表示して失敗します。
TFA is not yet secured to run all commands.
tfactl
コマンドを非rootとして実行しようとして失敗する場合、Oracle Trace File Analyzerを使用するための十分な権限がないことを意味します。
24時間後に、Oracle Trace File Analyzerは、sales1およびsales3のフェーズ2を完了します。Oracle Trace File Analyzerの通信モデルがsales1およびsales3に対して設定されます。sales1およびsales3で、通常のOracle Trace File Analyzerの操作を実行できます。sales2およびsales4との通信がまだ確立されていないため、これらのノードへのリモート・コマンドの実行は失敗します。
sales1およびsales3でprint status
を実行すると、sales2およびsales4は表示されなくなります。Oracle Trace File Analyzerの新しい通信モデルを使用するOracle Trace File Analyzerのみが通信を行います。
-bash-3.2# /u01/app/12.1.0/grid/bin/tfactl print status
.--------------------------------------------------------------------------------.
| Host | Status | PID | Port | Version | Build ID |Inventory |
+--------+---------+-------+------+------------+----------------------+----------+
| sales1 | RUNNING | 4390 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales3 | RUNNING | 23604 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
'--------+---------+-------+------+------------+----------------------+----------'
コマンドtfactl diagcollect
を実行すると、sales1およびsales3を対象に収集が実行されますが、他のノードは対象になりません。
-bash-3.2$ /u01/app/12.1.0/grid/bin/tfactl diagcollect
Collecting data for the last 4 hours for this component...
Collecting data for all nodes
Repository Location in sales1 : /u01/app/oragrid/tfa/repository
2015/06/30 05:25:27 PDT : Collection Name : tfa_Tue_Jun_30_05_25_20_PDT_2015.zip
2015/06/30 05:25:27 PDT : Sending diagcollect request to host : sales2
2015/06/30 05:25:27 PDT : Sending diagcollect request to host : sales3
2015/06/30 05:25:27 PDT : Sending diagcollect request to host : sales4
2015/06/30 05:25:27 PDT : Scanning of files for Collection in progress...
....
....
....
2015/06/30 05:25:37 PDT : Remote Collection in Progress...
2015/06/30 05:25:57 PDT : sales3:Completed Collection
2015/06/30 05:26:07 PDT : sales2:Failed Unable to connect to Node sales2
2015/06/30 05:26:07 PDT : sales4:Failed Unable to connect to Node sales4
2015/06/30 05:26:07 PDT : Completed collection of zip files.
残りのノードでのアップグレード時に、構成を同期化しないかぎり、Oracle Trace File Analyzerはすでにアップグレード済のノードを認識できません。
bash-3.2# /u01/app/12.1.0/grid/bin/tfactl print status
.------------------------------------------------------------------------------.
| Host | Status | PID | Port | Version | Build ID | Inventory|
+--------+---------+-----+------+------------+----------------------+----------+
| sales3 | RUNNING | 9 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
'--------+---------+-----+------+------------+----------------------+----------'
24時間の待機期間中にリリース更新リビジョン(RUR)の適用が完了しなかったノードをOracle Trace File Analyzerの構成に含めるには、次の手順を実行します。
-
すでに生成された鍵を持つノードから同期化スクリプトを実行します。
-
これらのノードにSSL構成を手動でコピーします。
前述の例のsales1では、次のようになります。
/u01/app/12.1.0/grid/tfa/sales1/tfa_home/bin/synctfanodes.sh
Current Node List in TFA :
sales1
sales2
sales3
sales4
Node List in Cluster :
sales1 sales2 sales3 sales4
Node List to sync TFA Certificates :
1 sales2
2 sales3
3 sales4
Do you want to update this node list? [Y|N] [N]: Y
Please Enter all the nodes you want to sync...
Enter Node List (seperated by space) : sales2 sales4
Syncing TFA Certificates on sales2 :
TFA_HOME on sales2 : /u01/app/12.1.0/grid/tfa/sales2/tfa_home
Copying TFA Certificates to sales2...
Copying SSL Properties to sales2...
Shutting down TFA on sales2...
Sleeping for 5 seconds...
Starting TFA on sales2...
Syncing TFA Certificates on sales4 :
TFA_HOME on sales4 : /u01/app/12.1.0/grid/tfa/sales4/tfa_home
Copying TFA Certificates to sales4...
Copying SSL Properties to sales4...
Shutting down TFA on sales4...
Sleeping for 5 seconds...
Starting TFA on sales4...
Successfully re-started TFA..
.--------------------------------------------------------------------------------.
| Host | Status | PID | Port | Version | Build ID | Inventory|
+--------+---------+-------+------+------------+----------------------+----------+
| sales1 | RUNNING | 4390 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales2 | RUNNING | 23604 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales3 | RUNNING | 28653 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
| sales4 | RUNNING | 5989 | 5000 | 12.1.2.4.2 | 12124220150629072212 | COMPLETE |
'--------+---------+-------+------+------------+----------------------+----------'
注意:
ノード・リストは、鍵の同期化が必要なノードsales2およびsales4のみに変更されました。
この場合、同じファイルを受信済であるため、sales3を同期化してもかまいません。その後、Oracle Trace File Analyzerを再起動します。
一部のノードのアップグレードが同時に実行されていません。Oracle Trace File Analyzerが鍵ファイルを同期化するまで24時間待機したくありません。どうすればよいでしょうか。
同期化スクリプトを使用して、Oracle Trace File Analyzerに証明書の生成と同期化を強制します。実行時に、スクリプトにより、SSL構成ファイルを生成してリモート・ノードに対して同期化するかどうかを確認するプロンプトが出されます。
次に例を示します。
-bash-3.2# /u01/app/12.1.0/grid/tfa/sales1/tfa_home/bin/synctfanodes.sh
Current Node List in TFA :
sales1
sales2
sales3
sales4
TFA has not yet generated any certificates on this Node.
Do you want to generate new certificates to synchronize across the nodes? [Y|N] [Y]:
Generating new TFA Certificates...
Restarting TFA on sales1...
Shutting down TFA
TFA-00002 : Oracle Trace File Analyzer (TFA) is not running
TFA Stopped Successfully
. . . . .
. . .
Successfully shutdown TFA..
Starting TFA..
Waiting up to 100 seconds for TFA to be started..
. . . . .
. . . . .
Successfully started TFA Process..
. . . . .
TFA Started and listening for commands
Node List in Cluster :
sales1 sales2 sales3 sales4
Node List to sync TFA Certificates :
1 sales2
2 sales3
3 sales4
Do you want to update this node list? [Y|N] [N]:
鍵ファイルが生成されて同期化されたら、各ノードで次のようにしてファイルを見つける必要があります。
# ls -al /u01/app/12.1.0/grid/tfa/sales1/tfa_home/client.jks
-rwx------ 1 root root 3199 Jun 30 14:12 /u01/app/12.1.0/grid/tfa/sales1/tfa_home/client.jks
# ls -al /u01/app/12.1.0/grid/tfa/sales1/tfa_home/server.jks
-rwx------ 1 root root 3201 Jun 30 14:12 /u01/app/12.1.0/grid/tfa/sales1/tfa_home/server.jks
# ls -al /u01/app/12.1.0/grid/tfa/sales1/tfa_home/internal/ssl.properties
-rwx------ 1 root root 220 Jun 30 14:12 /u01/app/12.1.0/grid/tfa/sales1/tfa_home/internal/ssl.properties
root
およびroot
のownership:group
のみが読取り可能です。各ファイルのチェックサムがすべてのノードで一致している必要があります。
22.8 再起動後に、またはそれ以外の場合に予期せずOSWatcherパラメータが異なる
Oracle Trace File AnalyzerでOSWatcherを管理する場合、インストールまたは再起動後に、OSWatcherは次のような非特権ユーザーとして起動されます。
-
Oracle RACシステムの場合:
grid
-
非Oracle RACシステムの場合:
oracle
OSWatcherを停止後に、root
として再起動することはお薦めしません。
次に例を示します。
tfactl oswbb stop
tfactl start oswbb 20 72 (interval of 20 seconds and retention of 72 hours)
この場合、OSWatcherは、停止後にoracle
またはgrid
として起動されるまで、または再起動が実行されるまで、root
として実行されます。いずれの場合も、パラメータはプロパティ・ファイルに保持されます。他のパラメータが指定されないかぎり、OSWatcherのデフォルトの間隔と保存期間(30と48)が使用されます。Oracle Trace File Analyzerバージョン12.1.2.5.2以降では、OSWatcherのプロパティ・ファイルは、ユーザーごとに保持されます。OSWatcherが起動されるたびに、間隔または保存時間のパラメータはそのユーザーに対して保持されます。それより前のバージョンでは、OSWatcher起動パラメータが予想と異なる場合は、OSWatcherの停止後に異なるパラメータを使用してroot
として起動したことが原因です。プロパティ・ファイルが1つのみであったため、これらの設定はすべての再起動で保持されました。
12.1.2.5.2以降では、再起動が実行されると、OSWatcherは常にoracle
またはgrid
のプロパティからパラメータを使用して起動する必要があります。OSWatcherの停止後に、再起動前とは別のパラメータを使用してroot
として再起動すると、OSWatcherの起動パラメータが異なります。root
プロパティからフェッチされたパラメータを、再起動後に有効にしないでください。パラメータは、oracle
プロパティのパラメータに戻す必要があります。
Oracleサポートが問題を調査するために異なる設定を推奨したことが原因で、パラメータが異なり、保持される設定が変更されている場合があります。その場合には、OSWatcherを停止し、通常のパラメータを使用して非特権ユーザーとして再起動してください。
tfactl oswbb stop
tfactl start oswbb (in this case the default interval of 30 seconds and retention of 48 hours would be persisted)
注意:
OSWatcherがインストール済で実行中であり、Oracle Trace File Analyzerによって管理されていない場合、Oracle Trace File Analyzerはそのインストールおよびパラメータに従います。oswbb
ツールのステータスをリストした場合に、ステータスはNOT RUNNING(Oracle Trace File Analyzerの管理対象外)でなければなりません。
22.9 Linux 7でOracle Trace File AnalyzerのインストールまたはOracle Trace File Analyzerの検出(tfactl rediscover)が失敗する
説明: 報告されたエラーは次のようなものです。
Can't locate Data/Dumper.pm in @INC (@INC contains: /usr/local/lib64/perl5
/usr/local/share/perl5 /usr/lib64/perl5/vendor_perl
/usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .
/u01/app/12.1.0/grid/tfa/dc75orarac02/tfa_home/bin
/u01/app/12.1.0/grid/tfa/dc75orarac02/tfa_home/bin/common
/u01/app/12.1.0/grid/tfa/dc75orarac02/tfa_home/bin/modules
/u01/app/12.1.0/grid/tfa/dc75orarac02/tfa_home/bin/common/exceptions) at
/u01/app/12.1.0/grid/tfa/dc75orarac02/tfa_home/bin/common/tfactlshare.pm line 545.
原因: このエラーは、Oracle Trace File Analyzerバージョン12.1.2.6.4で修正済のバグ21790910およびバグ22393355が原因で発生します。
処理: オペレーティング・システムのPerlをGRID_HOME
のPerlのバージョンにリンクします。
22.10 OSWatcherがTFA_HOMEから実行されていない場合にOSWatcher Analyzerが失敗する
説明: 報告されたエラーは次のようなものです。
tfactl> oswbb
Error: Cannot find OSWatcher files under
/u01/app/grid/tfa/repository/suptools//oswbb//archive
OSWatcher analyzer commands are supported only when it is running from TFA_HOME
原因: OSWatcherがTFA_HOME
から実行されていない場合に予期される動作です。
-
Oracle Trace File Analyzerの外部から実行されているOSWatcherバージョンを停止して無効にします。
-
Oracle Trace File Analyzer内からOSWatcherを起動します。
22.11 Java例外com.sleepycat.je.EnvironmentLockedExceptionでOracle Trace File Analyzerが起動に失敗する
説明: $TFA_BASE//log
にあるOracle Trace File Analyzer syserrorout
ログで検出されたエラーの報告は次のとおりです。
/u01/app/oracle/tfa//log$ cat syserrorout.08.06.2015-16.19.54
Exception in thread "TFAMain" com.sleepycat.je.EnvironmentLockedException: (JE 5.0.84)
/u01/app/oracle/tfa//database/BERKELEY_JE_DB The environment cannot be locked for single writer access.
ENV_LOCKED: The je.lck file could not be locked. Environment is invalid and must be closed.
at com.sleepycat.je.log.FileManager.(FileManager.java:368)
at com.sleepycat.je.dbi.EnvironmentImpl.(EnvironmentImpl.java:483)
at com.sleepycat.je.dbi.EnvironmentImpl.(EnvironmentImpl.java:409
原因: 根本原因は不明です。
処理:
-
BDBにアクセスしているプロセスがあるかどうかを確認します。
# fuser $GI_BASE/tfa//database/BERKELEY_JE_DB/je.lck
-
プロセスが返された場合は、そのプロセスを強制終了します。
# kill -9
-
$GI_BASE/tfa//database/BERKELEY_JE_DB/je.lck
ファイルを削除します。# rm -rf $GI_BASE/tfa//database/BERKELEY_JE_DB/je.lck
-
Oracle Trace File Analyzerを起動します。
# $TFA_HOME/bin/tfactl start
22.12 システム上にSolution-Soft社のTime Machineソフトウェアをインストール済だが実行していない場合にOracle Trace File Analyzerが起動に失敗する
処理: Time Machineソフトウェアをアンインストールします。
22.13 非特権ユーザーはtfactlコマンドを実行不可か。
説明:
root
として、非特権ユーザーがtfactl
コマンドを実行するためのOracle Trace File Analyzer権限を持っていることを確認してください。
tfactl access lsuser
/u01/app/12.1.0/grid/bin/tfactl access lsusers
.---------------------------------.
| TFA Users in myNode1 |
+-----------+-----------+---------+
| User Name | User Type | Status |
+-----------+-----------+---------+
| oracle | USER | Allowed |
'-----------+-----------+---------'
ユーザーがリストされており、ステータスがDisabledとして表示される場合は、非特権ユーザーのすべてのアクセスが無効化されていることを示します。
処理:
非特権ユーザーのアクセスを有効にするには、次のコマンドを実行します。
tfactl access enable
ユーザー(例: oracle
)がリストされない場合は、oracle
を追加します。
tfactl access add -user oracle
前述のいずれの処理でも問題が解決されない場合は、tfactl diagnosetfa -local
を実行します。生成されたファイルをOracleサポートにアップロードします。
22.14 Oracle Trace File Analyzerデーモンが起動しないか実行されない
TFA-00001: Failed to start Oracle Trace File Analyzer (TFA) daemon
TFA-00002: Oracle Trace File Analyzer (TFA) is not running
これらのエラーはJavaが起動されないことを示しています。
処理:
-
Oracle Trace File Analyzerが実行されていないことを確認してください。
ps -ef|grep -i tfa
注意:
一部のオペレーティング・システムでは、ps
コマンドの出力は80文字で切り捨てられます。ps
コマンドでは、実行中であってもプロセスが表示されません。 -
Oracle Trace File Analyzerデーモンが実行されていないことを確認するには、次のコマンドを
root
として実行します。# tfactl print status
-
Oracle Trace File Analyzerデーモンの起動を
root
として試行します。# tfactl start
Oracle Trace File Analyzerの起動が引き続き失敗する場合は、
tfactl diagnosetfa -local
を実行します。生成されたファイルをOracleサポートにアップロードします。