暗号化された SQL Server バックアップ ファイルを使用する

Database Migration Service は、暗号化された SQL Server バックアップと完全に互換性があります。暗号鍵を Google Cloud にアップロードすると、Database Migration Service はデータの安全性を損なうことなく、データを安全に復号して Cloud SQL for SQL Server の宛先インスタンスに読み込むことができます。

暗号化されたバックアップ ファイルを使用する場合は、移行に含まれる特定のデータベースに使用するすべてのバックアップ ファイル (フル、差分、トランザクション ログ)を暗号化する必要があります。つまり、フル バックアップ ファイルを暗号化する場合は、そのデータベースに使用する差分バックアップ ファイルとトランザクション ログ ファイルも暗号化する必要があります。すべてのバックアップ ファイルは、同じ鍵で暗号化する必要があります。

バックアップの暗号化はデータベースごとに評価されます。たとえば、ソース SQL Server インスタンスから 2 つのデータベース(my-business-databasemy-other-database)を移行する場合、`my-business- database`、my-other-database、または両方のデータベースで、暗号化されたバックアップを個別に使用できます。my-business-database

移行に暗号化されたバックアップを使用する手順は次のとおりです。

  1. ソース SQL Server インスタンスのバックアップを作成し、暗号化機能を使用します。暗号鍵を安全な場所に保存して、後で Cloud Storage にアップロードします。Microsoft ドキュメントの バックアップの暗号化 をご覧ください。

  2. 暗号鍵をアップロードします Cloud Storage バケットに。

  3. Google Cloud CLI のみ: 移行ジョブに含まれる暗号鍵と関連するデータベースを照合するマッピング ファイルを JSON 形式で作成します。マッピング ファイルは、単一のデータベースのマッピングを表すオブジェクトの配列です。構成ファイルの例:

    [
    {
      "database": "db1",
      "encryptionOptions": {
        "certPath": "Path to certificate 1",
        "pvkPath": "Path to certificate private key 1",
        "pvkPassword": "Private key password 1"
      }
    },
    {
      "database": "db2",
      "encryptionOptions": {
        "certPath": "Path to certificate 2",
        "pvkPath": "Path to certificate private key 2",
        "pvkPassword": "Private key password 2"
      }
    }
    ]
    

    ここで

    • database はデータベース識別子です。この識別子は、Cloud Storage の データベース フォルダ名と一致する必要があります。
    • certPathpvkPathpvkPassword は、gs://BUCKET_NAME/OBJECT_NAME 形式の証明書ファイルへの Cloud Storage パスです。 例: gs://my-bucket-name/certificate-folder/certificate-key-file1。 詳細については、Cloud Storage ドキュメントの オブジェクトの名前空間 をご覧ください。
  4. 移行ジョブを作成するときに、暗号鍵の Cloud Storage パスを指定します

  5. バックアップ ファイル(差分バックアップ ファイルまたはトランザクション ログ ファイル)を作成する場合は、フル バックアップに使用したのと同じ暗号鍵で暗号化してください。