対象者: SQL Server 2022 (16.x) およびそれ以降のバージョン
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Microsoft FabricのMirrored databases
SQL database in Microsoft Fabric
現在のデータベース コンテキストの変更フィードのオプションのパフォーマンス設定を構成します。
このシステム ストアド プロシージャは、次の操作のパフォーマンスを微調整するために使用されます。
Syntax
sys.sp_change_feed_configure_parameters
[ [ @maxtrans = ] max_trans ]
[ , [ @pollinterval = ] polling_interval ]
[ , [ @autoreseed = ] autoreseed ]
[ , [ @autoreseedthreshold = autoreseed_threshold_percent ]
[ , [ @dynamicmaxtrans = ] transactions ]
[ , [ @dynamicmaxtranslowerbound = ] transactions_lower_bound ]
[ ; ]
Arguments
[ @maxtrans = ] max_trans
データ型は int です。各スキャン サイクルで処理するトランザクションの最大数を示します。
@maxtransで変更バッチ サイズを減らすことで待機時間を短縮したり、バッチ サイズを大きくしてコストを削減したりするために使用されます。 バッチ サイズが大きくなると、実行される I/O 操作が少なくなります。
- Azure Synapse Link の場合、既定値が指定されていない場合は
10000。 指定する場合、値は正の整数である必要があります。 - ファブリック ミラーリングの場合、この値は動的に決定され、自動的に設定されます。
[ @pollinterval = ] polling_interval
データ型は int です。ログがスキャンされ、新しい変更が発生した場合の頻度を秒単位で示します。
- Azure Synapse Link の場合、指定しない場合の既定の間隔は 5 秒です。 値は
5以上である必要があります。 - ファブリック ミラーリングの場合、この値は動的に決定され、自動的に設定されます。
[ @autoreseed = ] 自動再シード
適用対象: ファブリック ミラーリングのみ
autoreseed引数は、自動実行オプションの設定を定義します。
0 = 無効、 1 = 指定された autoreseed_threshold_percentで有効。
自動復元機能は、SQL Server 2025 (プレビュー) では既定で無効になっています。 自動復元機能は有効になっており、Azure SQL Database と Azure SQL Managed Instance では管理または無効にできません。
再シード中、Microsoft Fabric のミラー化されたデータベース項目は使用できますが、増分変更は受け取りません。
詳細については、「 ファブリック ミラー化されたデータベースの自動再シードの構成」を参照してください。
[ @autoreseedthreshold = ] autoreseed_threshold_percent
適用対象: ファブリック ミラーリングのみ
autoreseedthreshold引数は、自動出力イベントがトリガーされたときのログ使用率のしきい値を定義します。 既定では、 70。
[ @dynamicmaxtrans = ] トランザクション
適用対象: ファブリック ミラーリングのみ
ファブリック ミラーリングの動的な最大トランザクションの設定が有効かどうか。
0 = 無効、 1 = 有効。 Fabric は、各スキャン サイクルで処理するトランザクションの最大数に従います。 詳細については、 SQL Server のミラー化されたデータベースのパフォーマンスに関するページを参照してください。
SQL Server 2025 (プレビュー) では、動的最大トランザクション機能が既定で有効になっています。 動的最大トランザクション機能は有効になっており、Azure SQL Database と Azure SQL Managed Instance では管理または無効にできません。
[ @dynamicmaxtranslowerbound = ] transactions_lower_bound
適用対象: ファブリック ミラーリングのみ
ファブリック ミラーリングの動的 maxtrans 設定の下限。 既定では、下限値は 200。
Returns
0 (成功) または 1 (失敗)。
Permissions
CONTROL データベース権限、db_owner データベース ロール メンバーシップ、または sysadmin サーバー ロール メンバーシップを持つユーザーは、この手順を実行できます。
Example
A。 自動再シードを有効にする
適用対象: ファブリック ミラーリングのみ
次の T-SQL サンプルを使用して、現在のミラー化されたデータベースで自動再シードを有効にします。 自動応答イベントをトリガーするログ使用率のしきい値を指定します (例: 70%)。 詳細については、「 ファブリック ミラー化されたデータベースの自動再シードの構成」を参照してください。
USE <Mirrored database name>
GO
EXECUTE sys.sp_change_feed_configure_parameters
@autoreseed = 1
, @autoreseedthreshold = 70;
B. 自動再シードを無効にする
適用対象: ファブリック ミラーリングのみ
現在のミラー化されたデータベースで自動再シードを無効にするには、次の T-SQL サンプルを使用します。
USE <Mirrored database name>
GO
EXECUTE sys.sp_change_feed_configure_parameters @autoreseed = 0;
C. 動的な最大トランザクション数を有効にする
適用対象: ファブリック ミラーリングのみ
動的最大トランザクション機能を有効にするには、 @dynamicmaxtrans を 1 に設定します。 例えば次が挙げられます。
USE <Mirrored database name>
GO
EXECUTE sys.sp_change_feed_configure_parameters
@dynamicmaxtrans=1;
動的最大トランザクション機能を無効にするには、 @dynamicmaxtrans を 0 に設定します。 例えば次が挙げられます。
USE <Mirrored database name>
GO
EXECUTE sys.sp_change_feed_configure_parameters
@dynamicmaxtrans=0;
sys.sp_help_change_feed_settings (Transact-SQL) を使用して、動的最大トランザクション機能の設定を確認します。
D. 動的最大トランザクション数の最大値と下限を構成する
適用対象: ファブリック ミラーリングのみ
動的最大トランザクション機能の最大値と下限を変更するには、それぞれ @maxtrans と @dynamicmaxtranslowerbound を使用します。 例えば次が挙げられます。
USE <Mirrored database name>
GO
EXECUTE sys.sp_change_feed_configure_parameters
@dynamicmaxtrans=1
, @dynamicmaxtranslowerbound=5
, @maxtrans=5000;