orchestrator
2023.10
false
- 基本情報
- 要件
- ベスト プラクティス
- インストール
- 更新
- Identity Server
- 起動エラーのトラブルシューティング
重要 :
このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。
新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。

Orchestrator インストール ガイド
最終更新日時 2026年3月24日
アップグレードの前に
v2023.4 以降にアップグレードする前に、以下の手順を必ず実行してください。こうすることで、アップグレードが完了すると問題なくすぐに開始できるようになります。
- データベースをバックアップして、データ損失のリスクを払拭します。
- 以下のアップグレード前のデータベース メンテナンス スクリプトを実行します。
このスクリプトは、期限切れまたは消費された許可をすべてデータベースから削除します。これにより、[identity].[PersistedGrants] の主キーとインデックスの再作成が高速化され、データベースの移行をすばやく行うことができます。
DECLARE @Now DATETIME2 = GETUTCDATE()
DECLARE @ConsumedGrantsGracePeriod DATETIME2 = DATEADD(hour, -2, @Now)
DECLARE @ConsumedDeleted int = 1
DECLARE @ExpiredDeleted int = 1
DECLARE @BatchSize int = 500
DECLARE @ConsumedBatchesDeleted int = 0
DECLARE @ExpiredBatchesDeleted int = 0
SET LOCK_TIMEOUT 0
SET DEADLOCK_PRIORITY LOW
WHILE (@ConsumedDeleted=1 OR @ExpiredDeleted=1)
BEGIN
IF @ConsumedDeleted=1
BEGIN
BEGIN TRY
DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [ConsumedTime] IS NOT NULL AND [ConsumedTime] < @ConsumedGrantsGracePeriod AND [Type] <> 'reference_token'
IF @@ROWCOUNT = 0
SET @ConsumedDeleted=0
ELSE
SET @ConsumedBatchesDeleted = @ConsumedBatchesDeleted + 1
END TRY
BEGIN CATCH
PRINT 'Failed to delete consumed grants'
END CATCH
END
IF @ExpiredDeleted=1
BEGIN
BEGIN TRY
DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [Expiration] < @Now AND [Type] <> 'reference_token'
IF @@ROWCOUNT = 0
SET @ExpiredDeleted=0
ELSE
SET @ExpiredBatchesDeleted = @ExpiredBatchesDeleted + 1
END TRY
BEGIN CATCH
PRINT 'Failed to delete expired grants'
END CATCH
END
PRINT 'Consumed batches deleted: ' + CONVERT(nvarchar(32), @ConsumedBatchesDeleted)
PRINT 'Expired batches deleted: ' + CONVERT(nvarchar(32), @ExpiredBatchesDeleted)
-- Wait for 10 seconds between deletes
IF (@ExpiredDeleted=1 OR @ConsumedDeleted=1)
WAITFOR DELAY '00:00:05.000'
END
DECLARE @Now DATETIME2 = GETUTCDATE()
DECLARE @ConsumedGrantsGracePeriod DATETIME2 = DATEADD(hour, -2, @Now)
DECLARE @ConsumedDeleted int = 1
DECLARE @ExpiredDeleted int = 1
DECLARE @BatchSize int = 500
DECLARE @ConsumedBatchesDeleted int = 0
DECLARE @ExpiredBatchesDeleted int = 0
SET LOCK_TIMEOUT 0
SET DEADLOCK_PRIORITY LOW
WHILE (@ConsumedDeleted=1 OR @ExpiredDeleted=1)
BEGIN
IF @ConsumedDeleted=1
BEGIN
BEGIN TRY
DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [ConsumedTime] IS NOT NULL AND [ConsumedTime] < @ConsumedGrantsGracePeriod AND [Type] <> 'reference_token'
IF @@ROWCOUNT = 0
SET @ConsumedDeleted=0
ELSE
SET @ConsumedBatchesDeleted = @ConsumedBatchesDeleted + 1
END TRY
BEGIN CATCH
PRINT 'Failed to delete consumed grants'
END CATCH
END
IF @ExpiredDeleted=1
BEGIN
BEGIN TRY
DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [Expiration] < @Now AND [Type] <> 'reference_token'
IF @@ROWCOUNT = 0
SET @ExpiredDeleted=0
ELSE
SET @ExpiredBatchesDeleted = @ExpiredBatchesDeleted + 1
END TRY
BEGIN CATCH
PRINT 'Failed to delete expired grants'
END CATCH
END
PRINT 'Consumed batches deleted: ' + CONVERT(nvarchar(32), @ConsumedBatchesDeleted)
PRINT 'Expired batches deleted: ' + CONVERT(nvarchar(32), @ExpiredBatchesDeleted)
-- Wait for 10 seconds between deletes
IF (@ExpiredDeleted=1 OR @ConsumedDeleted=1)
WAITFOR DELAY '00:00:05.000'
END