BCPエラーのトラブルシューティング
このページでは、Windows環境でBCP(バルクコピープログラム)のエラーへの対処法をご案内します。
エラー1
[OpManager_Home]\binフォルダーにbcp.exeまたはbcp.rllファイルが見つからない
解決策
- MS SQLのインストール場所\binフォルダー 内の bcp.exe および bcp.rllファイル をコピーし、[OpManager_Home]\binフォルダーに貼り付け
- bcp.exeファイルが複数ある場合は、MS SQLに適したバージョンを維持し、古いバージョンを削除
※bcp.exeのバージョンを確認するには、コマンド プロンプトを開き、OpManager_Home\bin\フォルダーで「bcp.exe -v」コマンドを実行
エラー2
BCPログインの失敗
解決策
- MS SQLサーバーのパスワードに「;」などの特殊文字が含まれていないことを確認
- [OpManager_Home]\binフォルダーのDBConfiguration.batを実行して、NetFlow AnalyzerでMS SQLユーザー名とパスワードを更新
DBConfiguration.batの手順
エラー3
BCPとMS SQLサーバーのバージョンの不一致
解決策
- MS SQLのインストール場所\binフォルダー から、MS SQLと同じバージョンのbcp.exeおよびbcp.rllファイルをコピーし、[OpManager_Home]\binフォルダーに貼り付け
※bcp.exeのバージョンを確認するには、コマンド プロンプトを開き、OpManager_Home\bin\フォルダーで「bcp.exe -v」コマンドを実行
※「SELECT SERVERPROPERTY('productversion') as 'Version'」クエリを実行しMS SQLバージョンを確認するか、SQL Server Management Studioに移動してインスタンス名を右クリックし、「プロパティ」を選択 - Microsoftネイティブ クライアントがインストールされている場合、MicrosoftネイティブクライアントのバージョンがMS SQLバージョンと一致していることを確認
エラー4
BCPログインタイムアウト
解決策
- オブジェクトエクスプローラーでサーバーを右クリックし、「プロパティ」を選択
- 「接続」ノードをクリック
- 「リモートサーバー接続」の「リモートクエリのタイムアウト」でSQLServerがタイムアウトするまで待機できる最大時間を設定
エラー5
BCPの互換性およびその他の一般的なトラブルシューティング法
解決策
- アンチウイルスによるbcp.exeのファイル権限を確認し、bcp.exeの実行を許可
- MS SQLサーバーがローカルシステムでホストされている場合、MS SQLサーバー名を該当のシステム名に変更
- ユーザー(Windows/MS SQL)にBCPファイルを実行する権限がない場合、ODBC接続でSQL Server認証を使用していることを確認
※SQL Server認証を使用せずにWindows認証のみを使用する場合、BCPは開始されません - ODBCBCP.dllファイルとSQLSRV32.dllファイルを確認
※これらのファイルは同じバージョンである必要があります。バージョンが異なる場合は、SQLSRV32.dllファイルの名前を変更してからMDAC(ODBC)を再インストールする必要があります。ODBCBCP.dllおよびSQLSRV32.dllファイルは、WINNT\System32フォルダーに位置し、これらのファイルのバージョン番号は同じでなければなりません - MS SQLサーバーがリモートサーバーにインストールされ、ネイティブクライアントがローカルシステムにインストールされていない場合、MS SQLサーバーに適したネイティブクライアントをローカルシステムにインストール
※ネイティブクライアントのインストールの詳細については、Microsoftのドキュメントをご参照ください - [OpManager_Home]\binフォルダーでbcp.exeを実行する際に「msvcr120.dll、msodbcsql13.dllファイルが見つかりません」というエラーメッセージが表示される場合は、以下2つの理由が考えられます
エラー6
MS SQLサーバーのトランザクションログがフルになる
解決策
- MS SQLデータベースに接続し、データベース名を右クリック
- プロパティをクリックし、オプションで「復旧モード」を「シンプル」として選択
- データベース名を右クリックして、「タスク」 > 「圧縮」 > 「ファイル」の順に選択し、「OK」をクリックして圧縮
参照:Microsoftドキュメント:BCPユーティリティ使用中にエラーが発生する(データがサーバーに正しくコピーされていない)