監視と調査の目的でsp_WhoIsActive
、結果を別のサーバーに保存する必要があるため、(特に xml 列であるクエリ プラン) の結果をテーブルに保存したいと考えています。
リンクサーバーを使用してこれを試みると、エラーが表示されます:
Xml データ型は、分散クエリではサポートされていません。リモート オブジェクト 'IROWSET' には xml 列があります
これはどのように達成できますか?
監視と調査の目的でsp_WhoIsActive
、結果を別のサーバーに保存する必要があるため、(特に xml 列であるクエリ プラン) の結果をテーブルに保存したいと考えています。
リンクサーバーを使用してこれを試みると、エラーが表示されます:
Xml データ型は、分散クエリではサポートされていません。リモート オブジェクト 'IROWSET' には xml 列があります
これはどのように達成できますか?
多数の SQL サーバーがあり、すべての結果を 1 つの中央グローバル プロダクション監査サーバーに送信したいと考えているようです。これは私が使用した方法です。これにより、SERVER NAME などの追加の列を追加できます。Linked Servers は単純に XML データ型をサポートしていないため、ソリューションを少し変更する必要があります。
XML 列を に変換しVARCHAR(MAX)
、クエリ プランをVARCHAR(MAX)
他のサーバーのグローバル テーブルに として保存する必要があります。次の手順を実行します
<table>
を作成しますsp_WhoIsActive
INSERT INTO <table>... EXEC sp_WhoIsActive
して、1 つのステートメントでそのテーブルにデータを入力する<table>
をVARCHAR(MAX)
VARCHAR
リンク サーバーのテーブルに挿入します。