0

SQLエージェントジョブを開始するために、sql2012用に開発されたssisパッケージ(および構成ファイル)があります。次のコマンドは、パッケージ全体で使用されます。

msdb.dbo.sp_start_job

msdb.dbo.sp_help_job

msdb.dbo.sp_help_jobhistory

そして、ステップレベルでSQLエージェントジョブを開始する権限を持つユーザーとして実行すると、以下のエラーメッセージが表示されます。

コード: 0xC0202009 ソース: データ収集 OLE DB ソース [20]
説明: SSIS エラー コード DTS_E_OLEDBERROR。OLE DB エラーが発生しました。エラー コード: 0x80004005。OLE DB レコードが利用可能です。ソース: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 説明: "プロシージャ 'sp_is_sqlagent_starting' のステートメント 'EXECUTE master.dbo.xp_sqlagent_is_starting @retval OUTPUT' が拡張ストアド プロシージャを呼び出すため、メタデータを特定できませんでした。

私は次のことを試しました:

  • DBA に grant execute パーミッションを付与してもらいました master.dbo.xp_sqlagent_is_startingが、それでも問題は解決しませんでした。sysadmin としてパッケージを実行します。これはうまくいきます
  • オフにして、OLEDB 接続用のパッケージ構成ファイルの 1 つのオプション。これは問題に影響を与えていないようでした。
  • どこを見ても、問題はopenrowset パッケージで使用していないものに関連しているようです。

これに対する解決策はありますか (sysadmin として実行する以外に)?

ありがとう

4

0 に答える 0