このページでは、インプレース アップグレード方法を使用して、Cloud SQL Enterprise エディションのインスタンスを Cloud SQL Enterprise Plus エディションにアップグレードする方法について説明します。また、Cloud SQL Enterprise Plus エディションのインスタンスを Cloud SQL Enterprise エディションに切り替える手順についても説明します。
Cloud SQL Enterprise Plus エディションにアップグレードすると、いくつかの利点とパフォーマンスの向上がもたらされます。詳細については、Cloud SQL for PostgreSQL エディションの概要をご覧ください。
既存の Cloud SQL Enterprise エディション インスタンスを強化できるようにするには、Cloud SQL Enterprise Plus エディションにアップグレードする必要があります。アップグレード プロセスが完了するまでに数分かかります。ダウンタイムはほぼゼロです。Cloud SQL Enterprise エディションに切り替えると、最大 60 秒のダウンタイムが発生することがあります。
また、このアップグレード プロセスでは、アプリケーションが接続するエンドポイントを変更する必要はありません。
始める前に
Cloud SQL Enterprise エディション インスタンスを PostgreSQL 12 以降で実行していることを確認します。
それより前のバージョンの PostgreSQL にインスタンスがある場合は、インスタンスを PostgreSQL 12 以降にアップグレードする必要があります。詳細については、データベースのメジャー バージョンをインプレースでアップグレードするをご覧ください。
PITR に使用されるトランザクション ログの保存場所を確認する
すべての Cloud SQL Enterprise Plus エディションのインスタンスは、ポイントインタイム リカバリ(PITR)で自動的に有効になります。アップグレードする Cloud SQL Enterprise エディションのインスタンスが、PITR に使用される write-ahead log をディスクに保存している場合、Cloud SQL Enterprise Plus エディションへのアップグレード プロセスでは、write-ahead log の保存場所がディスクから Cloud Storage に切り替わります。
Cloud SQL Enterprise Plus エディションにアップグレードする前に、Cloud SQL Enterprise エディションのインスタンスで、PITR に使用される write-ahead log の保存場所が切り替わるかどうかを確認してください。インスタンスの確認方法の詳細と手順については、PITR に使用されるトランザクション ログの保存場所を確認するをご覧ください。
アップグレード プロセスでトランザクション ログの保存場所を切り替える方法については、PITR に使用されるトランザクション ログの保存場所をご覧ください。
インスタンスを Cloud SQL Enterprise Plus エディションにアップグレードする
このセクションの手順に沿って、Cloud SQL Enterprise エディションのインスタンスを Cloud SQL Enterprise Plus エディションにアップグレードします。
コンソール
-
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- [編集] をクリックします。
- [Cloud SQL のエディションの選択] セクションで、[アップグレード] をクリックします。
- [Enterprise Plus へのアップグレード] パネルでインスタンス ID を入力し、[エディションのアップグレード] をクリックします。
または、インスタンスの [概要] ページの [構成] セクションで [アップグレード] をクリックして、インスタンスをアップグレードすることもできます。
gcloud
次のコードサンプルは、インスタンスを Cloud SQL Enterprise Plus エディションにアップグレードする方法を示しています。
gcloud sql instances patch INSTANCE_ID \ --edition=enterprise-plus \ --tier=MACHINE_TYPE \ --project=PROJECT_ID
省略可: --enable-data-cache
フラグを追加して、インスタンスのデータ キャッシュを有効にすることもできます。
次のように置き換えます。
- PROJECT_ID: アップグレードするインスタンスのプロジェクト ID。
- INSTANCE_ID: アップグレードするインスタンスの名前。
- MACHINE_TYPE: アップグレードするインスタンスのマシンタイプ。Cloud SQL Enterprise Plus エディションのマシンタイプの詳細については、Cloud SQL Enterprise Plus エディション インスタンスのマシンタイプをご覧ください。
REST
次のコマンドは、インスタンスを Cloud SQL Enterprise エディションにアップグレードし、再起動オペレーションをトリガーします。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: アップグレードするインスタンスのプロジェクト ID。
- INSTANCE_ID: アップグレードするインスタンスのインスタンス ID。
- MACHINE_TYPE: アップグレードするインスタンスのマシンタイプ。Cloud SQL Enterprise Plus エディションのマシンタイプの詳細については、Cloud SQL Enterprise Plus エディション インスタンスのマシンタイプをご覧ください。
省略可: データ キャッシュを有効にするには、dataCacheEnabled
パラメータを true
に設定します。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "tier": "MACHINE_TYPE", "edition": "ENTERPRISE_PLUS", "dataCacheConfig": { "dataCacheEnabled": true }, } }
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta4
次のコマンドは、インスタンスを Cloud SQL Enterprise エディションにアップグレードし、再起動オペレーションをトリガーします。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: アップグレードするインスタンスのプロジェクト ID。
- INSTANCE_ID: アップグレードするインスタンスのインスタンス ID。
- MACHINE_TYPE: アップグレードするインスタンスのマシンタイプ。Cloud SQL Enterprise Plus エディションのマシンタイプの詳細については、Cloud SQL Enterprise Plus エディション インスタンスのマシンタイプをご覧ください。
省略可: データ キャッシュを有効にするには、dataCacheEnabled
パラメータを true
に設定します。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "tier": "MACHINE_TYPE", "edition": "ENTERPRISE_PLUS", "dataCacheConfig": { "dataCacheEnabled": true }, } }
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
PITR に使用されるトランザクション ログの保存場所
Cloud SQL Enterprise エディションのインスタンスがディスクに PITR のトランザクション ログを保存している場合、Cloud SQL Enterprise Plus エディションへのアップグレード プロセスを開始すると、これらのログの保存場所が Cloud Storage に切り替わります。
場所の切り替えプロセスには、次の条件が適用されます。
- このプロセスでは、Cloud Storage への切り替えが完了するまでにかかる時間は、
transactionLogRetentionDays
PITR 構成設定の期間とほぼ同じになります。 - Cloud Storage への切り替え中は、
transactionLogRetentionDays
PITR 構成設定を変更しないことをおすすめします。transactionLogRetentionDays
を増やしても、write-ahead log は Cloud SQL Enterprise エディション インスタンスのデフォルト値である 7 日間を超えてディスクに保持されません。
Cloud SQL Enterprise Plus エディションのバックアップとログストレージのデフォルト
Cloud SQL Enterprise Plus エディションへのアップグレードが完了すると、アップグレードされたすべてのインスタンスのデフォルトのトランザクション ログ保持期間が 14 日に延長されます。この延長と、トランザクション ログ保持期間に対して構成するその他の延長について、PITR の全保持期間が適用されるには、新たに延長された値分の日数が必要です。たとえば、トランザクション ログの保持期間の古い値が 7 日で、新しい値が 14 日に延びた場合、アップグレード後の最初の 7 日間の PITR の保持期間は 7 日間のみです。8 日目には PITR の期間が 8 日間になり、9 日目には 9 日間になり、14 日目には保持期間が 14 日間に延長されます。
また、自動バックアップのデフォルト数は 8 から 15 に増加します。
メジャー バージョンのアップグレード後に Cloud SQL Enterprise Plus エディションにアップグレードすると、メジャー バージョンのアップグレードより前の時点に PITR を実行できなくなります。この制限は、保持期間がその期間に該当する場合にも適用されます。インスタンスは、メジャー バージョンのアップグレードを開始した後の特定の時点に復元できます。
Cloud SQL Enterprise エディションに変更する
コンソール
-
Google Cloud コンソールで Cloud SQL の [インスタンス] ページに移動します。
- インスタンスの [概要] ページを開くには、インスタンス名をクリックします。
- [編集] をクリックします。
- [Cloud SQL のエディションの選択] セクションで、[Enterprise に切り替える] をクリックします。
- [Enterprise に切り替える] パネルでインスタンス ID を入力し、[エディションを切り替える] をクリックします。
または、インスタンスの [概要] ページの [構成] セクションで [Enterprise に切り替える] をクリックすることでも、Cloud SQL Enterprise エディションに切り替えられます。
gcloud
次のコードサンプルは、インスタンスを Cloud SQL Enterprise エディションに切り替える方法を示しています。
gcloud sql instances patch INSTANCE_ID \ --edition=enterprise \ --tier=MACHINE_TYPE \ --project=PROJECT_ID
- PROJECT_ID: インスタンスのプロジェクト ID。
- INSTANCE_ID: インスタンスの名前。
- MACHINE_TYPE: 切り替え先のインスタンスのマシンタイプ。Cloud SQL Enterprise エディションのマシンタイプの詳細については、Cloud SQL Enterprise エディション インスタンスのマシンタイプをご覧ください。
REST
次のコマンドを実行すると、インスタンスが Cloud SQL Enterprise エディションに変更され、再起動オペレーションがトリガーされます。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: インスタンスのプロジェクト ID。
- INSTANCE_ID: インスタンスのインスタンス ID。
- MACHINE_TYPE: 切り替え先のインスタンスのマシンタイプ。Cloud SQL Enterprise エディションのマシンタイプの詳細については、Cloud SQL Enterprise エディション インスタンスのマシンタイプをご覧ください。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "tier": "MACHINE_TYPE", "edition": "ENTERPRISE" } }
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
REST v1beta4
次のコマンドを実行すると、インスタンスが Cloud SQL Enterprise エディションに変更され、再起動オペレーションがトリガーされます。
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: インスタンスのプロジェクト ID。
- INSTANCE_ID: インスタンスのインスタンス ID。
- MACHINE_TYPE: 切り替え先のインスタンスのマシンタイプ。Cloud SQL Enterprise エディションのマシンタイプの詳細については、Cloud SQL Enterprise エディション インスタンスのマシンタイプをご覧ください。
HTTP メソッドと URL:
PATCH https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID
リクエストの本文(JSON):
{ "settings": { "tier": "MACHINE_TYPE", "edition": "ENTERPRISE" } }
リクエストを送信するには、次のいずれかのオプションを開きます。
次のような JSON レスポンスが返されます。
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-16T02:32:12.281Z", "operationType": "UPDATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
Cloud SQL Enterprise エディションのバックアップとログストレージのデフォルト
Cloud SQL Enterprise エディションに変更しても、PITR に使用されるトランザクション ログの保存場所は切り替わりません。Cloud SQL Enterprise Plus エディションのインスタンスが PITR のトランザクション ログを Cloud Storage に保存している場合、ログは Cloud Storage に残ります。ただし、PITR のトランザクション ログのデフォルトの保存期間は 14 日間ではなく 7 日間に変更されます。バックアップ構成は変更されません。
次のステップ
- Cloud SQL Enterprise Plus エディションの詳細を確認する。