既存の Windows サーバーに SQL Server ライセンスを追加する


Compute Engine では、SQL Server を Windows 仮想マシン(VM)インスタンスにインストールして、従量課金制(PAYG)ライセンスを使用できます。このドキュメントでは、次の方法について説明します。

  1. SQL Server ライセンス メタデータをブートディスクに追加する
  2. SQL Server メディアを入手して SQL Server をインストールする
  3. Compute Engine VM インスタンスに SQL Server プロダクトキーを適用する

課金

Windows VM のブートディスクにライセンス文字列を追加すると、SQL Server イメージの料金に従って課金されます。

制限事項

  • PAYG ライセンスを追加できるのは、次の SQL Server エディションに限られます。

    • SQL Server Web Edition
    • SQL Server Standard Edition
    • SQL Server Enterprise Edition

SQL Server ライセンスを追加する

ブートディスクの SQL Server ライセンス メタデータにより、Google Cloud は SQL Server ライセンスの使用状況を正確に追跡し、請求と報告を行うことができます。このメタデータは、PAYG SQL Server ライセンスを使用する場合に必要です。次の手順で、既存のブートディスクに SQL Server ライセンスを追加します。

  1. VM に追加するライセンスを特定します。SQL Server の場合は、実行するバージョンとエディションの両方に一致するライセンスが必要です。有効な SQL Server ライセンス文字列の一覧については、SQL Server のオペレーティング システムの詳細ドキュメントの [ライセンス文字列] タブをご覧ください。

  2. VM を停止します。

    gcloud compute instances stop VM_NAME
    

    VM_NAME は、停止する VM の名前に置き換えます。

  3. ブートディスクを特定します。

    gcloud compute instances describe VM_NAME
    

    VM_NAME は VM の名前で置き換えます。

  4. 次のような内容が出力されていることを確認します。

    disks:
    - autoDelete: true
      boot: true
      deviceName: BOOT_DISK_NAME
      diskSizeGb: '20'
      guestOsFeatures:
      - type: UEFI_COMPATIBLE
      index: 0
      interface: SCSI
      kind: compute#attachedDisk
      licenses:
      - BOOT_DISK_LICENSE_STRING
      mode: READ_WRITE
      source: https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/disks/BOOT_DISK_NAME
      type: PERSISTENT
    
  5. ブートディスクを切断します。

    gcloud compute instances detach-disk VM_NAME --disk=BOOT_DISK_NAME
    

    次のように置き換えます。

    • VM_NAME: VM の名前
    • BOOT_DISK_NAME: ブートディスクの名前
  6. ブートディスクのクローンを作成し、追加のライセンスを追加します。

    gcloud compute disks create CLONED_BOOT_DISK_NAME \
      --licenses=SQL_SERVER_LICENSE \
      --source-disk=BOOT_DISK_NAME \
      --source-disk-zone=BOOT_DISK_ZONE \
      --zone=CLONED_BOOT_DISK_ZONE
    

    次のように置き換えます。

    • CLONED_BOOT_DISK_NAME: クローン作成したブートディスクに付ける名前
    • CLONED_BOOT_DISK_NAME: ブートディスクに追加する SQL Server ライセンス
    • BOOT_DISK_NAME: クローンを作成するソース ブートディスクの名前
    • BOOT_DISK_ZONE: ソース ブートディスクのゾーン。
    • CLONED_BOOT_DISK_ZONE: クローン ブートディスクを作成するゾーン
  7. 新しいディスクに正しいライセンスがあることを確認します。

    gcloud compute disks describe CLONED_BOOT_DISK_NAME \
      --zone=CLONED_BOOT_DISK_ZONE
    

    次のように置き換えます。

    • CLONED_BOOT_DISK_NAME: クローン作成したブートディスクの名前
    • CLONED_BOOT_DISK_ZONE: クローン作成したブートディスクのゾーン
  8. 新しいディスクを VM インスタンスのブートディスクとしてアタッチします。

    gcloud compute instances attach-disk VM_NAME \
      --disk=CLONED_BOOT_DISK_NAME
      --boot
    

    次のように置き換えます。

    • VM_NAME: クローン作成したブートディスクをアタッチする VM インスタンスの名前
    • CLONED_BOOT_DISK_NAME: クローン作成したブートディスクの名前
  9. VM のブートディスクが、SQL Server ライセンスを含む新しいクローン ディスクであることを確認します。

    gcloud compute instances describe VM_NAME
    

    VM_NAME は VM の名前で置き換えます。

  10. VM インスタンスを起動します。

    gcloud compute instances start VM_NAME
    

    VM_NAME は VM の名前で置き換えます。

  11. (省略可)以前のブートディスクに戻す必要がない場合は、ディスクを削除できます。

    gcloud compute disks delete BOOT_DISK_NAME \
      --zone=BOOT_DISK_ZONE
    

    次のように置き換えます。

    • BOOT_DISK_NAME: 削除するブートディスクの名前
    • BOOT_DISK_ZONE: ブートディスクのゾーン

SQL Server メディアを入手して SQL Server をインストールする

SQL Server インストール メディアを取得して Compute Engine VM ブートディスクにコピーする手順は次のとおりです。

  1. 任意のバージョンの SQL Server(2019 Enterprise など)を使用して、SQL Server インストール メディアを含む新しいディスクを作成します。

    gcloud compute disks create SQL_SERVER_MEDIA_DISK_NAME \
      --image-family=sql-ent-2019-win-2022 \
      --image-project=windows-sql-cloud \
      --zone=SQL_SERVER_ZONE
    

    次のように置き換えます。

    • SQL_SERVER_MEDIA_DISK_NAME: 作成する SQL Server メディア ディスクの名前
    • SQL_SERVER_ZONE: SQL Server メディア ディスクを作成するゾーン
  2. ディスクを既存の Compute Engine VM インスタンスにアタッチします。

    gcloud compute instances attach-disk VM_INSTANCE_NAME \
      --disk=SQL_SERVER_MEDIA_DISK_NAME
      --zone=SQL_SERVER_ZONE
    

    次のように置き換えます。

    • VM_INSTANCE_NAME: SQL Server メディア ディスクをアタッチする VM インスタンスの名前
    • SQL_SERVER_MEDIA_DISK_NAME: SQL Server メディア ディスクの名前
    • SQL_SERVER_ZONE: VM インスタンスのゾーン。

    SQL Server メディア ディスクが VM インスタンスにアタッチされたら、Windows マシンで [ディスクの管理] ページを開き、ディスクにドライブ文字が割り当てられているかどうかを確認します。割り当てられていない場合は、ディスクを右クリックして [オンライン] を選択し、オンラインにします。[ディスクの管理] ページと Windows エクスプローラで、SQL Server のメディア ディスクが D: ドライブになりました。

  3. VM インスタンスのブートディスクに 5 GB 以上の空きディスク容量があることを確認し、SQL Server メディアをブートディスクにコピーします。

    robocopy /mir d:\sql_server_install\ c:\sql_server_install
    
  4. VM インスタンスから SQL Server メディア ディスクを切断します。

    gcloud compute instances detach-disk VM_INSTANCE_NAME \
      --disk=SQL_SERVER_MEDIA_DISK_NAME
    

    次のように置き換えます。

    • VM_INSTANCE_NAME: SQL Server メディア ディスクを切断する VM インスタンスの名前
    • SQL_SERVER_MEDIA_DISK_NAME: VM から切断する SQL Server メディア ディスクの名前

詳細については、Microsoft SQL Server インストール ガイドをご覧ください。

Compute Engine VM インスタンスに SQL Server プロダクトキーを適用する

SQL Server インストール メディアをアップグレードするには、新しいプロダクトキーを取得して、SQL Server がインストールされている Compute Engine VM インスタンスに適用する必要があります。プロダクトキーを取得し、SQL Server インストール メディアをアップグレードする手順は次のとおりです。

  1. SQL Server インストール メディアからプロダクトキーを取得します。

    C:\> type C:\sql_server_install\x64\DefaultSetup.ini
    
  2. プロダクトキーを適用し、SQL Server インストール メディアをアップグレードします。詳細については、SQL Server の別のエディションにアップグレードするをご覧ください。

次のステップ