Oracleのユーザー名とパスワードの検証に失敗したことを示すエラーと、OCIInitializeに失敗し、リターン・コードを示すデーモン・メッセージを受け取った場合、その問題のほとんどはCache Connect to OracleがOCIライブラリを初期化していないことが原因です。
次のライブラリ・パス環境変数を確認します。
プラットフォーム
|
確認する変数
|
---|---|
UNIX(HP-UXを除く) | LD_LIBRARY_PATH 64-bitプラットフォームでは、LD_LIBRARY_PATH64がLD_LIBRARY_PATHに優先します。ライブラリ・パスがLD_LIBRARY_PATH64に指定されていることを確認します。 |
HP-UX | SHLIB_PATH |
Windows | PATH |
ライブラリ・パス環境変数には、次の値が含まれている必要があります。
TimesTenのビットとプラットフォームのビット
|
設定値
|
---|---|
32-bitプラットフォーム上の64-bitまたは32-bitのTimesTen | $ORACLE_HOME/LIBおよび$ORACLE_HOME/NETWORK/LIB |
64-bitプラットフォーム上の32-bit TimesTen | $ORACLE_HOME/LIB32および$ORACLE_HOME/NETWORK/LIB32 |
Windowsの場合は、「コントロール パネル」→「管理ツール」→「サービス」を選択し、Oracleクライアント・サービスが稼働していることを確認します。
UNIXの場合は、psコマンドを使用して、Oracleクライアント・プロセスが稼働していることを確認します。
OracleのSQL*Plusコマンド・プロンプトから次のコマンドを入力して、現在自分に付与されているOracle権限を表示します。
SELECT * FROM SESSION_ROLES;
SELECT * FROM SESSION_PRIVS;
表示された権限と、様々なCache Connect to Oracle操作で必要な権限(『Oracle TimesTen Cache Connect to Oracle開発者および管理者ガイド』のOracleユーザーの作成および権限の設定に関する説明を参照)を比較します。追加の権限が必要な場合は、Oracle管理者に連絡してください。
Oracleクライアントをインストールしてから、マシンを再起動していない場合、TimesTenデーモンは、Oracleクライアントをインストールする前の古い環境で稼働しています。マシンを再起動すると、新しい環境でTimesTenを起動できます。
ttIsqlセッションで、次のコマンドを入力します。
Command> call ttCacheUidPwdSet('scott','tiger');
エラーが返される場合は、Oracle ID、キャッシュ管理ユーザーIDおよびキャッシュ管理パスワードを確認します。また、Oracleインスタンスが実行されているかどうかも確認します。
システム環境で、Oracleインストールの/binディレクトリ(ORACLE_HOME/bin)を検索できることを確認します。
問題の原因が、ユーザー環境とシステム環境の相違によるかどうかを確認するテストを行います。この手順では、2つのセッション・ウィンドウ(Windowsのコマンド・プロンプト・ウィンドウまたはUNIXのシェル・ウィンドウ)が必要です。
% install_dir/srv/ttsrv70.exe -d -verbose
いくつかのメッセージが一瞬表示され、待機状態になります。
oci.dll
のコピーを参照しているかどうか、ユーザー環境とシステム環境でoci.dll
ライブラリのパス名に違いがないかどうかを確認します。Virtual C++がインストールされているWindowsシステムで実行中の場合は、ロードされた動的ライブラリを検証します。次に示す検証は、キャッシュ・エージェントを自動リフレッシュなしで起動できる場合にのみ可能です。
Command> call ttCacheStart();
Command> create cache group cg1 from t1(c1 int not null primary key);
ttora70.exe
を検索して選択し、右クリックして「デバッグ」を選択します。これでVirtual C++が起動され、ロードされたdllがデバッグ・ウィンドウに表示されます。「Oracleサービス名を解決できない」を参照してください。Command> load cache group cg1 commit every 100 rows;
この部分的なリストは、Oracle 10.2.0.1.0クライアントで作成されています。
Loaded symbols for 'C:\tt70\bin\ttora70.exe'
Loaded 'C:\WINDOWS\system32\ntdll.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\kernel32.dll', no matching symbolic information found.
Loaded symbols for 'C:\tt70\bin\tten70d.dll'
Loaded symbols for 'C:\tt70\bin\ttco70d.dll'
Loaded 'C:\WINDOWS\system32\wsock32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ws2_32.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\msvcrt.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\ws2help.dll', no matching symbolic information found.
Loaded 'C:\WINDOWS\system32\advapi32.dll', no matching symbolic information found.
...