SSIS プロジェクトからの Oracle 接続に問題があり、現在 1 週間以上にわたって解決策を見つけるためにグーグルで検索してきましたが、何も見つかりませんでした。
私の開発環境には次の構成があります。
O/S: Windows Server 2008 R2 データセンター、64 ビット SQL Server データ ツール、2010
SSIS データ フロー タスクを構成して、4 つの異なる Oracle データ ソース (とりわけ) からデータを取得する必要があります。1 つは Oracle バージョン 11.1.0.7、2 つはバージョン 9.2.0.4.0、1 つは 9.2.0.8.0 です。
構成には、ローカルの TNSNAMES および SQLNET.ora ファイルを使用します。
私は多くの異なるOracleクライアントでこれを試しましたが、基本的に同じ結果が得られたので、私が行ったものを強調します:
- Oracle Client 11gR2 64 ビットをインストールしました。
- Oracle Client 11gR2 32 ビットをインストールしました (この順序をお勧めします)。
- TNSNAMES および SQLNET.ora ファイルをネットワーク/管理構成フォルダーの両方にコピーしました。
- 上記の 4 つのデータベースのそれぞれで TNSPING が成功しました。成功。
- SQL Server Data Tools を開き、新しいプロジェクトを開きました
- 「新しい接続マネージャーの作成」を行い、ADO.NETを選択しました
- 「Oracle Client Data Provider」を選択し、11g データベースの詳細を入力します
- 「テスト接続」を行いました。成功。
- 9.0 データベースの 1 つに対して手順を繰り返します。「接続のテスト」を実行すると、「プロバイダーの初期化中にエラーが発生したため、接続のテストに失敗しました。ORA-12645: パラメータが存在しません」というメッセージが表示されます。
3 つの 9.x データベースすべてで同じ結果が得られました。
Oracle の「ヘルプ」によると、このエラーは SQLNET.ora ファイルのパラメーターが欠落していることが原因であり、解決策は欠落しているパラメーターを追加することです。問題は、何が欠けているかがどこにも書かれていないことです。
2 つのクライアント (ODTwithODAC1120320_32 ビット、ODAC1120320_x64) 以外の他の Oracle クライアント インストールでこの同じ手順を試しましたが、まったく同じ結果が得られました。私が理解しているように、バージョン 12 のクライアントにはアクセスできません。9 のデータベースでは機能しないからです。11 のデータベースでは機能しないため、10 のクライアントにはアクセスできません。
これは 64 ビット O/S と SQL サーバーのバージョンに非常に固有のものであると感じていますが、それが私たちのターゲット プラットフォームであるため、機能させる必要があります。
誰でもこれで私を助けてくれますか?