Top Banner
30

Migration Process - active.nikkeibp.co.jp

Dec 11, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Migration Process - active.nikkeibp.co.jp
Page 2: Migration Process - active.nikkeibp.co.jp

Migration Process

アセスメント

データベース移行

(スキーマ/データ)

アプリケーション移行

新環境での最適化

•Database Migration Assistant (DMA)

•SQL Server Migration Assistant (SSMA)

•Database Migration Assistant (DMA)

•SQL Server Migration Assistant (SSMA)

•BACPAC

•Replication / Data Sync

•Database Migration Service (DMS)

•Database Experimentation Assistant (DEA)

•クエリストア

Page 3: Migration Process - active.nikkeibp.co.jp

Data Access Migration ToolkitVisual Studio Code の拡張機能

ソースコード (C# / Java / SQL 等) 内の SQL の呼び出し個所を検出

.Net application assessments in Data Access Migration Toolkit are now available

https://azure.microsoft.com/en-us/updates/net-application-assessments-in-data-access-migration-toolkit-are-now-available/

Data Access Migration Toolkit

https://marketplace.visualstudio.com/items?itemName=ms-databasemigration.data-access-migration-toolkit

Page 4: Migration Process - active.nikkeibp.co.jp

Migration Tool

Page 5: Migration Process - active.nikkeibp.co.jp

移行を実施している最中はハードウェアリソースの消費が多いため、移行作業中は、一時的にサイズの大きいリソースを割り当てることも検討

SQL Server Migration

SQL Server Migration Assistant (SSMA)

SQL Server データベースのクラウド内の SQL Database への移行

https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-cloud-migrate

SQL Server Migration Assistant

https://docs.microsoft.com/ja-jp/sql/ssma/sql-server-migration-assistant

SQL Server 以外から SQL Server に移行

Data Migration Assistant (DMA)

SQL Server のアップグレード / 移行

SQL Server 向けの Migration ツールが公開されているため有効に活用

Page 6: Migration Process - active.nikkeibp.co.jp

Migration Guide各種 DB の移行を行う際の、移行ガイダンスを Web から作成することが可能

Migration Guide

https://datamigration.microsoft.com/

Page 7: Migration Process - active.nikkeibp.co.jp

SQL Server 以外からの移行- SQL Server Migration Assistant (SSMA) -

Page 8: Migration Process - active.nikkeibp.co.jp

SQL Server Migration Assistant (SSMA)

他 DB から、SQL Server への移行アセスメントと移行を実施するための無償ツール

SQL Server Migration Assistant

https://docs.microsoft.com/ja-jp/sql/ssma/sql-server-migration-assistant

Microsoft Data Migration Blog

https://blogs.msdn.microsoft.com/datamigration/

SSMA による移行SSIS パッケージの作成

Page 9: Migration Process - active.nikkeibp.co.jp

SSMA を使用したデータ移行の流れ①Oracle のスキーマを変換 ②SQL Server にスキーマを反映 ③SQL Server にデータを移行

SSMA コンソールのコマンドラインオプション (OracleToSQL)

https://docs.microsoft.com/ja-jp/sql/ssma/oracle/command-line-options-in-ssma-console-oracletosql

SSMA for Oracle 入門 (OracleToSQL)

https://docs.microsoft.com/ja-jp/sql/ssma/oracle/getting-started-with-ssma-for-oracle-oracletosql

Page 10: Migration Process - active.nikkeibp.co.jp

SQL Server 間の移行(環境移行 / バージョンアップ)- Data Migration Assistant (DMA) -

Page 11: Migration Process - active.nikkeibp.co.jp

Data Migration Assistant (DMA)環境の分析を行い、移行に伴い変更がある機能 / 互換性レベル変更の影響 / 新環境の推奨情報を確認

Microsoft® Data Migration Assistant v5.0

https://www.microsoft.com/en-us/download/details.aspx?id=53595

Data Migration Assistant (DMA)

https://blogs.msdn.microsoft.com/datamigration/dma/

Data Migration Assistant の概要

https://docs.microsoft.com/ja-jp/sql/dma/dma-overviewSQL Server データベースを Azure SQL Database に移行する

https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-migrate-your-sql-server-database

Page 12: Migration Process - active.nikkeibp.co.jp

Azure MigrateAzure への移行に伴う評価や移行を集約して実行/管理できる Azure の機能

実行結果を Azure Migrate にアップロード

Page 13: Migration Process - active.nikkeibp.co.jp

Database Experimentation Assistant (DEA)SQL Server の環境の変更 (アップグレード/新しいインデックスの設定後の確認等) による影響を確認するための「A/B テスト」を実施することができるソリューション(SQL Database / Managed Instance / SQL Server on Linux もサポート)

Microsoft® Database Experimentation Assistant 2.6

https://www.microsoft.com/en-us/download/details.aspx?id=54090

Release: Database Experimentation Assistant (DEA) v2.6

https://blogs.msdn.microsoft.com/datamigration/2018/08/06/release-database-experimentation-assistant-dea-v2-6/

日本語版 SQL Server でレポートを作成する場合、DEA からの接続に使用する

ログインの言語をEnglish に変更

ログインの言語設定の変更

DEA により作成されるレポート

Page 14: Migration Process - active.nikkeibp.co.jp

DEA を使用した分析の流れ①分析対象のクエリをキャプチャ

②クエリの再生

③再生結果の分析

SQL Server

DEA

①キャプチャの設定をDEA から投入

Application

②クエリを実行③トレースを生成

トレースファイルSQL Server

①クエリを再生

再生結果 ②再生結果を生成

クエリの再生は環境 A/B に対して実行し、両環境の結果を取得

分析データ格納用

SQL Server環境 A

再生結果

環境 B

再生結果

DEA

DEA

①再生結果を比較 / 分析

②分析結果からレポートを生成

注意事項

Page 15: Migration Process - active.nikkeibp.co.jp

ユーザー データベースバックアップの互換性

ユーザーデータベースのバックアップは、上位バージョンにリストア可能

ログファイルのバックアップの活用

SQL Server データベースのバックアップと復元

https://docs.microsoft.com/ja-jp/sql/relational-databases/backup-restore/back-up-and-restore-of-sql-server-databasesログ配布について (SQL Server)

https://docs.microsoft.com/ja-jp/sql/database-engine/log-shipping/about-log-shipping-sql-server

Page 16: Migration Process - active.nikkeibp.co.jp

システムデータベースの移行システムデータベースは「同一バージョン」でないとリストアすることはできない

システムデータベースに含まれるオブジェクトの移行はユーザーデータベースとは異なる方法で検討

https://support.microsoft.com/ja-jp/help/918992/how-to-transfer-logins-and-passwords-between-instances-of-sql-server

https://docs.microsoft.com/ja-jp/sql/sql-server/failover-clusters/troubleshoot-orphaned-users-sql-server

https://docs.microsoft.com/ja-jp/sql/relational-databases/replication/replication-backward-compatibility

Page 17: Migration Process - active.nikkeibp.co.jp

データベース以外に格納されている関連情報についての考慮

SQL Server のインストールパラメーターが不明な場合

SQL Server 構成マネージャーで設定する項目

OS の設定

https://docs.microsoft.com/ja-jp/sql/database-engine/configure-windows/scm-services-change-the-service-startup-account

• ボリュームの保守タスクを実行• メモリ内のページのロック

Page 18: Migration Process - active.nikkeibp.co.jp

SQL Database への移行の基礎

Page 19: Migration Process - active.nikkeibp.co.jp

BACPAC ファイルSQL Database の移行で利用される機会の多い、DB のエクスポートファイル

データベースのスキーマとデータを含んだ ZIP 圧縮されたファイル

BACPAC による移行は「新しいデータベース」として作成される

Azure SQL Database を BACPAC ファイルにエクスポートする

https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-export

BACPAC ファイルを新しい Azure SQL Database にインポートする

https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-import

Page 20: Migration Process - active.nikkeibp.co.jp

SSMS を使用した BACPAC のエクスポート

SQL Server からエクスポート SQL Database からエクスポート

SQL Server / SQL Database の両環境で DB をエクスポートすることができる

Page 21: Migration Process - active.nikkeibp.co.jp

データの同期レプリケーション

Data Sync 2.0SQL Server

パブリッシャー(同期対象 DB)

ディストリビューター(同期制御 DB) SQL Database

サブスクライバー(同期先 DB)

プッシュサブスクリプション

SQL Database へのレプリケーションhttps://docs.microsoft.com/ja-jp/sql/relational-databases/replication/replication-to-sql-database

Sync data across multiple cloud and on-premises databases with SQL Data Synchttps://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-sync-data

同期エージェント SQL Server

SQL Database

SQL Database(論理サーバー)

メタデータ DB 同期グループ(同期の論理単位)

ハブデータベース

(同期対象)

トランザクションレプリケーションとData Sync で同期するためには主キーが必要

注意事項

Page 22: Migration Process - active.nikkeibp.co.jp

Database Migration Assistant による性能の試算

DMA の SKU recommendation を使用することで、既存 SQL Server 環境を移行した際の必要性能を試算できる

試算するためには次の作業を実施

Identify the right Azure SQL Database/Managed Instance SKU for your on-premises databasehttps://docs.microsoft.com/en-us/sql/dma/dma-sku-recommend-sql-db?view=sql-server-ver15

Page 23: Migration Process - active.nikkeibp.co.jp

Azure Database Migration Service

Page 24: Migration Process - active.nikkeibp.co.jp

Azure Database Migration Service (DMS)

Microsoft / Microsoft 以外のデータベースを Azure にマイグレーションするためのサービス

DMS は Azure の仮想ネットワーク内のリソースとして作成し、DMS からアクセス可能な DB の

移行を行う

Azure Database Migration Service

https://azure.microsoft.com/ja-jp/services/database-migration/

FAQ about using the Azure Database Migration Service

https://docs.microsoft.com/en-us/azure/dms/faq

Azure Database Migration Service とは

https://docs.microsoft.com/ja-jp/azure/dms/dms-overview

DMS

Azure仮想ネットワーク

Azure 社内 他クラウド

移行元 / 移行先

DMS の仮想ネットワークからアクセス可能な範囲が移行対象

Page 25: Migration Process - active.nikkeibp.co.jp

オフライン移行 / オンライン移行オフライン移行 (Standard / Premium)

オンライン移行 (Premium)

システム停止

データ移行 システム切り替え

初期データ移行 増分移行

システム停止

最終データ移行 システム切り替え

Page 26: Migration Process - active.nikkeibp.co.jp

DMS が提供する移行パターン次の移行パターンを利用することが可能

ソース (移行元) ターゲット (移行先) ステータス

SQL Server SQL Database

GAManaged Instance

SQL Server on VM

MongoDB Cosmos DB GA

Private Preview の申し込みサイト

https://dmspreview.azurewebsites.net/

Azure Database Migration Service によってサポートされる移行シナリオの状態

https://docs.microsoft.com/ja-jp/azure/dms/resource-scenario-status

ソース (移行元) ターゲット(移行先) ステータス

SQL ServerAzure SQL Database GA

RDS for SQL Server

SQL Server

Managed InstanceGA

RDS for SQL Server

Oracle Private Preview

MongoDB Cosmos DB GA

MySQLAzure DB for MySQL GA

RDS for MySQL

PostgreSQL

Azure DB for PostgreSQLGA

RDS for PostgreSQL

Oracle Public Preview

PostgreSQL Azure DB for PostgreSQL

Hyperscale (Citus)GA

RDS for PostgreSQL

オフライン移行 オンライン移行

Page 27: Migration Process - active.nikkeibp.co.jp

オフライン移行移行元で更新を停止した状態にしてデータベースの移行を実施する方式

SQL Server → SQL Database のオフライン移行

https://docs.microsoft.com/ja-jp/azure/dms/tutorial-sql-server-to-azure-sql

SQL Server → Managed Instance へのオフライン移行

https://docs.microsoft.com/ja-jp/azure/dms/tutorial-sql-server-to-managed-instance

Page 28: Migration Process - active.nikkeibp.co.jp

オフライン 移行の流れSQL Server → SQL Database

SQL Server → Managed Instance

①スキーマの移行

SQL Server SQL Database

スキーマを移行

②データ移行の開始

DMS SQL Server

SQL Database

①DMS がデータをエクスポート

②DMS がデータをインポート

DMS

バックアップの取得とリストア

SQL Server

共有フォルダー BLOB ストレージ

①DMS がバックアップ要求を送信

②SQL Server が共有フォルダーにバックアップを取得

③DMS がバックアップをBLOB ストレージに移動

Managed Instance

⑤Managed Instance がBLOB ストレージから

バックアップをリストア

④DMS がリストア要求を送信

Page 29: Migration Process - active.nikkeibp.co.jp

オンライン移行最小のダウンタイムで移行を実施するため、増分データ同期を実施できる機能

次の組み合わせの Online Migration 機能を提供

Migrate SQL Server to Azure SQL Database online using DMS

https://docs.microsoft.com/en-us/azure/dms/tutorial-sql-server-azure-sql-online

Migrate SQL Server to Azure SQL Database Managed Instance online using DMS

https://docs.microsoft.com/en-us/azure/dms/tutorial-sql-server-managed-instance-online

Migrate MySQL to Azure Database for MySQL online using DMS

https://docs.microsoft.com/en-us/azure/dms/tutorial-mysql-azure-mysql-online

Migrate PostgreSQL to Azure Database for PostgreSQL online using DMS

https://docs.microsoft.com/en-us/azure/dms/tutorial-postgresql-azure-postgresql-online

Page 30: Migration Process - active.nikkeibp.co.jp

SQL Database へのオンライン移行で利用される機能

データ移行には、移行元 (SQL Server) で次の機能が利用される

データベースの復旧モデルは「一括ログ復旧」「完全復旧」のいずれかを設定

Known issues/migration limitations with online migrations to Azure SQL DB

https://docs.microsoft.com/en-us/azure/dms/known-issues-azure-sql-online