SQL Server 2008 データベースにデータを一括ロードするアプリケーションに取り組んでいます。CSV ファイルをネットワーク共有に書き込み、BULK INSERT コマンドを含むストアド プロシージャを呼び出します。
アプリケーションを完全に新しいネットワークに移行しています。この新しい世界では、一括挿入は次のエラーで失敗します:
Msg 4861, Level 16, State 1, Line 1
Cannot bulk load because the file "\\myserver\share\subfolder\filename" could not be opened. Operating system error code 5(failed to retrieve text for this error. Reason: 15105).
ファイルを書き込んだのと同じアカウントを使用して、Windows 認証を使用してデータベースに接続します。このファイルと、それが置かれているフォルダーは、私のユーザー アカウントとデータベース サーバーのドメイン サービス アカウントの両方に読み取りと変更の権限を与えます。そのサービス アカウントには、 MSDNで言及されているように、許可された委任が制限されているようです。それでも駄目。SQL Server アカウントを使用して接続すると、一括挿入は成功しますが、Windows 認証のみに固執しようとしています。
これを機能させるために何をする必要があるかを理解している人はいますか? SQL Server は、ネットワーク共有上のデータにアクセスし、そのサービス アカウントと接続されたユーザーのサービス アカウントの間をどのように行き来するのでしょうか? 現在のインフラストラクチャで同様の状況で一括挿入できることはわかっていますが、これは経年劣化で非常に扱いにくいため、これを可能にするために過去に何が行われたかを追跡するのは困難です。