このページでは、Microsoft SQL Server データベースをバックアップして復元し、バックアップをモニタリングする方法の概要を説明します。
Microsoft SQL Server のバックアップを構成する
Microsoft SQL Server は Windows Server で動作するデータベース システムです。Compute Engine では、SQL Server をアプリケーションのバックエンドの一部として、あるいは柔軟な開発、テスト環境として使用できます。高パフォーマンスの SQL Server インスタンスを作成していない場合は、まず SQL Server を使用して VM インスタンスを作成する必要があります。詳細については、高パフォーマンスの SQL Server インスタンスの作成をご覧ください。
バックアップを構成するための前提条件
SQL Server データベースのバックアップを開始する前に、このページのセクションを順番に完了する必要があります。このページでは、プロジェクトに関する次の詳細を前提としています。
VM は 1 つまたは 2 つです。
ソース - 本番環境 - ソース データベースをホストする VM。
ターゲット - 復元、テスト、DR、非本番環境 - データベースの仮想コピーをマウントする VM。
Backup and DR は、バックアップ/リカバリ アプライアンスがインストールされた状態でデプロイ済みであり、アプライアンスと SQL Server VM 間の必要な通信を許可するようにネットワーク ファイアウォールが構成されています。
新しい VM をデプロイする場合でも、既存の VM を使用する場合でも、次のタスクを順番に実行する必要があります。
ソース VM とターゲット VM には、Backup and DR エージェントの設定が必要です。
Windows Server では、iSCSI サービスを開始に設定し、自動起動に設定する必要があります。
Microsoft SQL Server がインストールされている必要があります。
通常のオペレーション手順で、データベースとログを別のディスク ドライブで実行する場合は、SQL Server にドライブを追加できます。
移行元の Windows Microsoft SQL Server VM を設定する
移行元 VM にログインします。
これが Compute Engine インスタンスの場合は、iSCSI イニシエータが起動していることと、再起動時に自動起動が設定されていることを確認する必要があります。これを行うには、次の手順で iSCSI イニシエータ アプリケーションを起動します。
[スタート メニュー] をクリックします。
「iSCSI イニシエータ 」と入力してアプリケーションを見つけます。
プロセスを起動する。
プロンプトが表示されたら、[はい] をクリックして iSCSI を有効にし、起動時に自動起動するように設定します。完了すると、[iSCSI イニシエータ] ページが表示されます。[OK] をクリックして閉じます。
ブラウザを開き、アプライアンス管理コンソールから Windows Backup and DR エージェントをダウンロードします。Backup and DR エージェントをダウンロードする手順は次のとおりです。
アプライアンス管理コンソールで、[管理] プルダウン メニューをクリックし、[アプリケーション] をクリックします。
右クリックして、バックアップ イメージを実行するアプライアンスを選択し、[アプライアンスを構成] を選択します。
[アプライアンスの構成] ページで、[エージェント管理] に移動し、関連するエージェントをダウンロードします。別のホストでこれを行い、実行可能ファイルを関連するホストに転送する必要がある場合があります。
Windows Backup and DR エージェントの EXE をクリックし、[実行] を選択します。
[はい] を選択してインストールを開始します。
[変更トラッキング ドライバを使用した Backup and DR エージェント] をインストールするオプションを選択します。 これにより、1 GB を超えるデータベースの変更をトラッキングする追加の Windows サービスがインストールされます。
[次へ] をクリックし、デフォルトの場所に Backup and DR エージェントをインストールすることに同意します。
[インストール] をクリックしてインストールを開始します。完了したら、[完了] をクリックします。
[サービス] コントロール パネルを開き、2 つの Backup and DR サービスが実行されていることを確認します。実行されていない場合は、Backup and DR エージェントを再インストールして、[ブロック変更のトラッキング] を有効にします。
Windows コマンド プロンプトを開き、ディレクトリを
C:\Program Files\Google Cloud Backup and DR>に変更します。次のコマンドを実行します。
udsagent.exe secret --reset省略可: トランザクション ログのバックアップが必要な場合は、データベースの 復旧モデル を Full に変更する必要があります。デフォルトは Simpleです。つまり、Backup and DR ログ バックアップ イメージはバックアップするログを 見つけられません。これが構成で選択されている設定の場合は、変更しないでください。Microsoft SQL Server Management Studio にログインし、データベースを右クリックして [プロパティ] を選択します。[オプション] に移動し、復旧モデル を [Simple] から [Full] に変更します。
トランザクション ログ(完全復旧モデル)を使用して SQL データベースをバックアップする場合、または復元時にアプライアンス管理コンソール インターフェースに SQL Server の認証情報を入力する必要がないようにする場合は、次の 2 つの方法があります。
シームレスなエクスペリエンスを実現するには、次のいずれかの方法を使用します。
オプション 1:
sysadminロールを使用する。SQL インスタンスのセキュリティ [ログイン] メニューに移動します。
NT AUTHORITY\SYSTEMアカウントを右クリックして [プロパティ] を選択します。次に、 [サーバーのロール] で [sysadmin] ロールを選択し、[OK] をクリックします。これにより、Backup and DR エージェントは、追加のユーザー認証を必要とせずに、ログ バックアップ イメージとログ復元を実行するための昇格された権限を取得できます。オプション 2: 新しい Windows 管理者アカウントを作成する - ドメインまたはローカル OS:
アカウント権限を確認または付与します。
SQL で次の権限を許可します:
dbcreator serverロール、db_backup operator databaseロール、db_owner databaseロールSQL で次のセキュリティ保護可能オブジェクトを割り当てます: View any database、Create any database、Alter any database、Connect SQL
次に、アカウントがローカルの Windows 管理者グループに属している必要があります。 これにより、
C:\Program Files\Google Cloud Backup and DR>のスクリプトにアクセスし、OS 呼び出しを行い、バックアップ イメージが保存されるステージング ディスクを処理できます。最後に、 Google Cloud Backup and DR エージェント サービスを 更新してこのアカウントとして実行し、サービスを再起動します。
アプライアンス管理コンソールに Microsoft SQL Server ホストとそのデータベースを追加する
Microsoft SQL Server データベースを保護するには、まずアプライアンス管理コンソールにホストを追加してから、データベースを検出する必要があります。
アプライアンス管理コンソールで、[管理] プルダウン メニューをクリックし、[ホスト] を選択します。
[+ ホストを追加] をクリックします。
名前と IP アドレスを入力し、SQL Server VM のプラス記号(+) をクリックします。
バックアップ/リカバリ アプライアンスを選択し、[追加] をクリックします。
[Backup and DR エージェントの設定] で、次の操作を行います。
Backup and DR エージェント ポートは通常ポート 5106 です。それ以外の場合は、ここにそのポートを入力します。
SMB 共有をバックアップする場合にのみ、ホストの認証情報を追加します。
ホストと Backup and DR エージェント間の信頼できる 通信を初期化するには、Backup and DR エージェントによって Windows ホスト サーバーと Linux ホスト サーバーで生成されたシークレット キーを指定する必要があります。過去 2 時間以内に生成されたシークレット キーがない場合は、 移行元の Windows Microsoft SQL Server VM を設定するの手順に沿ってキーをリセットし、生成された キーをこのフィールドに貼り付けます。この操作は 1 回だけ行う必要があります。移行元の Windows Microsoft SQL Server VM を設定するで生成された シークレット キーを使用できます。
アプライアンス管理コンソールで、[バックアップと復旧]、[バックアップ] に移動し、[Microsoft SQL Server] を選択します。新しく追加したサーバーを選択し、[次へ] をクリックして、サーバー上の SQL インスタンスを検出します。この処理が完了するまでに 1 分ほどかかることがあります。失敗した場合は、バックアップ/リカバリ アプライアンスが TCP ポート 5106 を使用して SQL Server にアクセスできるように、正しいファイアウォール ポリシーが設定されていることを確認する必要があります。手順に沿って、 バックアップ/リカバリ アプライアンスから Backup and DR エージェントへの接続を検証します。
VM 上の SQL Server インスタンスが表示されます。
バックアップ プランの作成
このセクションでは、バックアップ プラン テンプレートを作成する方法について説明します。テンプレートはバックアップ ポリシーで構成されます。ポリシーでは、バックアップの実行タイミング、バックアップの実行頻度、バックアップ イメージの保持期間(日、週、月、年)、復元先を定義できます。
アプライアンス管理コンソールで、[バックアップ プラン] プルダウン メニューに移動し、[テンプレート] をクリックします。
[テンプレートを作成] をクリックします。
新しいテンプレートの名前と説明を入力し、本番環境データを表すアイコンに関連付けられたプラス記号(+) をクリックします。
ポリシー名、毎日のウィンドウ、データベースのスナップショットの保持期間を入力します。通常、この保持期間は短く、復元パフォーマンスを確保するために Persistent Disk ストレージのスナップショット プールに保存されます。
[Advanced Policy Settings] をクリックします。
詳細ポリシー設定にはいくつかのオプションがありますが、ほとんどはデフォルト値のままにしておく必要があります。SQL Server の場合、最も一般的に変更される設定と、ベスト プラクティスの推奨値は次のとおりです。
バックアップ後にログを切り捨て/パージする。[切り捨て] に設定します。
データベース ログのバックアップを有効にする。[はい] に設定します。
ログ バックアップの保持期間。[7 日] に設定します。
ログを複製する。[いいえ] に設定します。
OnVault プールにログを送信する。[はい] に設定します。
[変更を保存] をクリックします。選択したら、[ポリシーの更新] をクリックします。
スナップショット アイコンが色付きで表示されます。
スナップショット アイコンと OnVault アイコンの間のプラス記号(+) をクリックして、OnVault ポリシーを追加します。
ポリシー名、毎日のウィンドウ、データベース バックアップ イメージの OnVault コピーの保持期間を入力します。ウィンドウの開始時刻は、スナップショット ポリシーで指定した時刻と一致する必要があります。通常、この保持期間は 30 ~ 90 日と長く、パフォーマンスと費用の適切なバランスを確保するために、コピーは Cloud Storage に保存されます。完了したら、[ポリシーの更新] をクリックします。
[テンプレートを保存] をクリックして、ポリシーと設定を保存します。
アプライアンス管理コンソールとバックアップ/リカバリ アプライアンスをデプロイすると、OnVault プールと一致するリソース プロファイルが自動的に作成されます。 このリソース プロファイルは、データベースを保護するときに使用されます。
必要に応じて、データベースをアプライアンス管理コンソールに追加して保護します。 Microsoft SQL Server ホストとそのデータベースを追加するに 進みます。
バックアップ プランを適用する
このステップでは、アプライアンス管理コンソールでバックアップ ポリシーを構成するで作成したバックアップ プラン ポリシーを、アプライアンス管理コンソールに Microsoft SQL Server ホストとそのデータベースを追加するで検出されたデータベースに適用します。
テンプレートを初めて適用すると、バックアップ プランはすぐに実行され、スケジュールに従って実行されます。スナップショット ポリシーに従ってデータベースのスナップショットを取得し、OnVault ポリシーに従って OnVault プールにコピーして長期間保存します。
バックアップするデータベースがある SQL Server インスタンスを選択し、[次へ] をクリックします。
バックアップ プランを適用するには、インスタンスを選択し、インスタンス リストの上にあるプルダウン メニューから [バックアップ プランを適用] を選択します。オプションを選択すると、プルダウン メニューが表示されます。以前に作成したテンプレート とプロファイル を選択し、[OK] をクリックします。
バックアップ イメージに含めるデータベースまたは除外するデータベースを個別に選択する場合は、[すべてのデータベース] リンクをクリックして、メンバーシップの管理ダイアログを表示します。
バックアップ イメージのデータベースの包含または除外のニーズに合わせて、包含ルールを選択できます。新しいデータベースの自動包含は、この選択によって制御されます。
[Include all]、[Include user]、および [Exclude selected]を選択すると、 このインスタンスに追加された新しいデータベースが自動的にバックアップされます。
[ユーザーを含める] と [選択したものを除外する] を選択すると、バックアップするデータベースの静的リストが作成され、手動で操作しない限り新しいデータベースはバックアップされません。
推奨される選択肢は [すべて含める] です。
必要に応じてデータベースの包含ルールを変更して変更を保存したら、[次へ] をクリックします。バックアップ イメージの作成時に Microsoft SQL Server 固有の動作を決定するアプリケーション設定を変更できます。 デフォルトのままにして [次へ] を選択します。
概要表示で [完了] をクリックして、SQL Server データベースの検出と保護を開始します。確認ページが表示され、検出が完了するまでブラウザ ウィンドウを開いたままにして、更新しないように求められます。もう一度、[完了] をクリックします。
緑色のチェックボックス が表示されたら続行します。
バックアップ プランが SQL インスタンスに適用されると、[テンプレート] ポリシー内のスケジュールに基づいて、バックアップ イメージが自動的に開始されます。
これでデータベースが正常にバックアップされます。バックアップ スナップショットを開始してから数分後に、[App manager]、 [Applications] メニューに戻ります。
オンデマンド バックアップ
オンデマンド バックアップは、いつでも手動でトリガーできるバックアップの一種です。 オンデマンド バックアップは、特定のイベントの前にデータをバックアップする必要がある場合に便利です。たとえば、更新やパッチを適用する前に VM をバックアップして、更新プロセスで問題が発生した場合に以前の状態に復元できるようにします。
マネージド アプリケーションのオンデマンド バックアップを実行するには:
- [App Manager] タブをクリックし、プルダウン リストから [アプリケーション] オプションを選択します。[アプリケーション] ページが開きます。
- Google Cloud VMware Engine インスタンスを選択し、ページの右下にあるプルダウン リストから [バックアップ構成の管理] をクリックします。
- 右側の [ポリシー] から [スナップショット] を選択します。
- [ラベル] を入力し、[今すぐ実行] をクリックします。選択したポリシーのオンデマンド バックアップがトリガーされます。
Microsoft SQL Server インスタンスを復元する
復元とは、[マウント] オペレーションを使用してバックアップ イメージからデータを復元するプロセスです。
アプライアンス管理コンソールで、[App Manager] プルダウン メニューに移動し、[アプリケーション] をクリックします。
バックアップした SQL インスタンスまたはデータベースを見つけて右クリックし、[アクセス] を選択します。
構成されているバックアップ プランに応じて、タイムライン ランプまたはテーブル ビューにキャプチャされたイメージが表示されます。スナップショット レーンと OnVault レーンにイメージが表示されることがあります。次に、いずれかのイメージを選択して [マウント] をクリックします。
[マウント] 画面で、データベースをマウントするターゲット ホストを選択します。ソースホストに戻すことも(DB の新しい名前を選択)、別のターゲット ホストにすることもできます。必要に応じて、マウントのラベルを入力することもできます。これは、後でマウント ジョブを参照する場合に便利です。[アイテムを選択] 領域で、マウントするデータベースも選択する必要があります。
次に、マウントするデータベースの名前を指定します。Backup and DR UDS ホスト エージェント サービスに、 移行元の Windows Microsoft SQL Server VM を設定するセクションで指定された権限がある場合は、 [ユーザー名] フィールドと [パスワード] フィールドを空白のままにできます。 それ以外の場合は、この画面でこれらの権限を持つ認証情報を入力する必要があります。最後に、[送信] をクリックしてジョブを実行します。環境によっては、マウント ジョブに 1 ~ 5 分ほどかかることがあります。ジョブをモニタリングするには、アプライアンス管理コンソールの [モニタリング] プルダウン メニューに移動し、[ジョブ] をクリックします。
すべて成功した場合は、アプライアンス管理コンソールでマウント タスクを確認できます。[App Manager] プルダウン メニューをクリックし、[Active Mounts] をクリックします。
SQL Server インスタンスに戻り、インスタンスを更新して、新しくマウントされたデータベースを表示します。
データベースが使用可能であることを確認します。[新しいクエリ] を選択し、次の情報を貼り付けます。
DevCRMはマウントされたデータベースの名前に置き換えます。USE [DevCRM] SELECT * from [Customers];
データベースをマウントして移行する
マウントと移行を使用すると、マウント オペレーションを使用してデータベースにすばやくアクセスし、実行中にデータベースを復元できます。後で、マウントされたディスクからサーバーに接続されたディスクに切り替える際に、中断はわずかです。
アプライアンス管理コンソールで、[App Manager] プルダウン メニューに移動し、[Active Mounts] をクリックします。
データベースを右クリックして [移行] を選択します。
[頻度] を選択します。これは、マウントされたデータベースからサーバーに接続されたディスクへの増分更新の間隔(時間単位)です。 このプロセスは、最終的な切り替えが完了するまで繰り返されます。 また、コピー スレッド数(1 ~ 20)を構成し、必要に応じて復元されたコピーの新しいファイルとフォルダの場所を選択することもできます。[送信] をクリックしてプロセスを開始します。
移行ジョブの実行中、データベースはバックアップ/リカバリ アプライアンスのスナップショット プールからホストされるマウントされたデータベースとして実行されます。最初の移行ジョブが完了すると、SQL データベースとログファイルのローカルに復元されたコピーがターゲット SQL Server に存在します。
移行を完了します。これにより、データベースがオフラインになり、現在のデータの最終同期がサーバーに接続されたディスクに対して実行され、復元されたデータベース ファイルを参照するように SQL Server が切り替えられ、データベースがオンラインに戻ります。多くの大規模なデータベースでは、変更率に応じてこのプロセスが 5 分未満で完了することがあります。 アプライアンス管理コンソールの [App Manager] プルダウン メニューから [Active Mounts] をクリックし、移行を完了するデータベースを選択します。次に、[移行を完了する] を選択します。
完了タスクを確認し、[続行] オプションをクリックします。
最後に、Backup and DR は、完了タスクの一部として、以前にマウントされたディスクもクリーンアップします。クリーンアップ タスクを手動で実行する必要はありません。
モニタリング
Microsoft SQL Server ジョブは、ジョブのモニタリングとイベントのモニタリングからモニタリングできます。
次のステップ
このページでは、Backup and DR を使用して Microsoft SQL Server データベースを保護して復元するためのクイックスタートについて説明します。詳細については、以下をご覧ください。
- Microsoft SQL Server データベースの Backup and DR
- Backup and DR 用に Microsoft SQL Server データベースを準備する
- Microsoft SQL Server データベース ホストを追加してデータベースを検出する
- Microsoft SQL Server インスタンスとデータベースのバックアップ プランを構成する
- Microsoft SQL Server データベースをマウントする
- Microsoft SQL Server データベースを移行する
- Microsoft SQL Server データベースのクローンを作成する
- Microsoft SQL Server バックアップを復元する