ログ再生サービス (LRS) を使用して移行を行う

完了

ログ再生サービス (LRS) は、オンプレミスの SQL Server からクラウド内の SQL Managed Instance へのデータベースのカスタム移行を可能にするツールです。 これはログ配布テクノロジを使用しており、より詳細な制御が必要な場合、ダウンタイムをほとんど許容できない場合、または Azure Data Migration Service を使用できない場合に役立ちます。

Diagram showing how Log Replay Service (LRS) works.

LRS は、PowerShell、CLI コマンドレット、または API で直接使用して、SQL Managed Instance へのデータベース移行を手動でビルドおよび調整できます。 LRS の使用を検討するいくつかの理由を以下に示します。

  • データベース移行プロジェクトのより詳細な制御
  • 一括移行時のダウンタイムをほとんど許容できない
  • 環境内に DMS 実行可能ファイルをインストールできない
  • データベース バックアップへのファイル アクセスの欠如
  • 環境から Azure へのネットワーク ポートを開くことができない

移行の種類を理解する

LRS では 2 つの移行モードが利用できます。

モード 説明 推奨対象 バックアップ チェーンの利用可能性
オートコンプリート 最後のバックアップ ファイルが復元されたときに移行を自動的に終了します パッシブなワークロード バックアップ チェーン全体が事前に利用可能である必要があります
継続的 逐次新しいバックアップ ファイルをスキャンしてそれらを復元するので、データのキャッチアップが可能です アクティブなワークロード 移行中にバックアップ チェーンを追加できます

モードに関係なく、30 日以内に移行を完了するように計画を立ててください。それ以降になると LRS ジョブは自動的にキャンセルされます。

移行プロセスをセキュリティで保護する

LRS を実行するには、次のいずれかの Azure ロールベースのアクセス制御 (RBAC) ロールが必要です。サブスクリプション所有者、SQL Managed Instance 共同作成者、またはアクセス許可 Microsoft.Sql/managedInstances/databases/* を持つカスタム ロール。

Azure Blob Storage アカウントが必要であり、これは SQL Server インスタンスと SQL Managed Instance の間のバックアップ ファイルの中間ストレージとして機能します。 Azure Blob Storage をファイアウォールと共に使用するには、別の構成が必要です。 MI サブネット委任とストレージ サービス エンドポイントを使用して、SQL Managed Instance サブネットをストレージ アカウントの仮想ネットワーク ファイアウォール規則に追加する必要があります。 また、SAS トークンまたはマネージド ID のいずれかを使用して Azure Blob Storage アカウントにアクセスできますが、両方にアクセスすることはできません。

バックアップと復元のパフォーマンスを向上させる

1 つのファイルを使用する代わりに、完全バックアップと差分バックアップを複数のファイルに分割することで、バックアップと復元のパフォーマンスを向上させることができます。 これは、複数のファイルは並列で読み書きでき、バックアップまたは復元操作の完了にかかる時間が短縮されるためです。

また、バックアップ圧縮を有効にすると、ネットワーク転送速度を向上させることができます。 圧縮されたバックアップはサイズが小さくなるため、ネットワーク経由での転送にかかる時間が短縮されます。 これは、Azure との間で大規模なバックアップを転送する場合に特に便利です。

必須ではありませんが、バックアップに対して CHECKSUM を有効にすることを強くお勧めします。 CHECKSUM がないと SQL Managed Instance はバックアップに対して整合性チェックを実行し、これによってデータベースの復元にかかる時間が長くなる可能性があります。 CHECKSUM を有効にすることで、復元操作を高速化できます。